forked from lug/matterbridge
		
	Add dependencies/vendor (whatsapp)
This commit is contained in:
		
							
								
								
									
										7
									
								
								vendor/modernc.org/libc/stdlib/capi_darwin_amd64.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								vendor/modernc.org/libc/stdlib/capi_darwin_amd64.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,7 @@
 | 
			
		||||
// Code generated by 'ccgo stdlib/gen.c -crt-import-path  -export-defines  -export-enums  -export-externs X -export-fields F -export-structs  -export-typedefs  -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o stdlib/stdlib_darwin_amd64.go -pkgname stdlib', DO NOT EDIT.
 | 
			
		||||
 | 
			
		||||
package stdlib
 | 
			
		||||
 | 
			
		||||
var CAPI = map[string]struct{}{
 | 
			
		||||
	"__darwin_check_fd_set_overflow": {},
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										5
									
								
								vendor/modernc.org/libc/stdlib/capi_darwin_arm64.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								vendor/modernc.org/libc/stdlib/capi_darwin_arm64.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,5 @@
 | 
			
		||||
// Code generated by 'ccgo stdlib/gen.c -crt-import-path  -export-defines  -export-enums  -export-externs X -export-fields F -export-structs  -export-typedefs  -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o stdlib/stdlib_darwin_arm64.go -pkgname stdlib', DO NOT EDIT.
 | 
			
		||||
 | 
			
		||||
package stdlib
 | 
			
		||||
 | 
			
		||||
var CAPI = map[string]struct{}{}
 | 
			
		||||
							
								
								
									
										5
									
								
								vendor/modernc.org/libc/stdlib/capi_freebsd_386.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								vendor/modernc.org/libc/stdlib/capi_freebsd_386.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,5 @@
 | 
			
		||||
// Code generated by 'ccgo stdlib/gen.c -crt-import-path  -export-defines  -export-enums  -export-externs X -export-fields F -export-structs  -export-typedefs  -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o stdlib/stdlib_freebsd_386.go -pkgname stdlib', DO NOT EDIT.
 | 
			
		||||
 | 
			
		||||
package stdlib
 | 
			
		||||
 | 
			
		||||
var CAPI = map[string]struct{}{}
 | 
			
		||||
							
								
								
									
										5
									
								
								vendor/modernc.org/libc/stdlib/capi_freebsd_amd64.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								vendor/modernc.org/libc/stdlib/capi_freebsd_amd64.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,5 @@
 | 
			
		||||
// Code generated by 'ccgo stdlib/gen.c -crt-import-path  -export-defines  -export-enums  -export-externs X -export-fields F -export-structs  -export-typedefs  -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o stdlib/stdlib_freebsd_amd64.go -pkgname stdlib', DO NOT EDIT.
 | 
			
		||||
 | 
			
		||||
package stdlib
 | 
			
		||||
 | 
			
		||||
var CAPI = map[string]struct{}{}
 | 
			
		||||
							
								
								
									
										5
									
								
								vendor/modernc.org/libc/stdlib/capi_linux_386.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								vendor/modernc.org/libc/stdlib/capi_linux_386.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,5 @@
 | 
			
		||||
// Code generated by 'ccgo stdlib/gen.c -crt-import-path  -export-defines  -export-enums  -export-externs X -export-fields F -export-structs  -export-typedefs  -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o stdlib/stdlib_linux_386.go -pkgname stdlib', DO NOT EDIT.
 | 
			
		||||
 | 
			
		||||
package stdlib
 | 
			
		||||
 | 
			
		||||
var CAPI = map[string]struct{}{}
 | 
			
		||||
							
								
								
									
										5
									
								
								vendor/modernc.org/libc/stdlib/capi_linux_amd64.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								vendor/modernc.org/libc/stdlib/capi_linux_amd64.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,5 @@
 | 
			
		||||
// Code generated by 'ccgo stdlib/gen.c -crt-import-path  -export-defines  -export-enums  -export-externs X -export-fields F -export-structs  -export-typedefs  -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o stdlib/stdlib_linux_amd64.go -pkgname stdlib', DO NOT EDIT.
 | 
			
		||||
 | 
			
		||||
package stdlib
 | 
			
		||||
 | 
			
		||||
var CAPI = map[string]struct{}{}
 | 
			
		||||
							
								
								
									
										5
									
								
								vendor/modernc.org/libc/stdlib/capi_linux_arm.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								vendor/modernc.org/libc/stdlib/capi_linux_arm.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,5 @@
 | 
			
		||||
// Code generated by 'ccgo stdlib/gen.c -crt-import-path  -export-defines  -export-enums  -export-externs X -export-fields F -export-structs  -export-typedefs  -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o stdlib/stdlib_linux_arm.go -pkgname stdlib', DO NOT EDIT.
 | 
			
		||||
 | 
			
		||||
package stdlib
 | 
			
		||||
 | 
			
		||||
var CAPI = map[string]struct{}{}
 | 
			
		||||
							
								
								
									
										5
									
								
								vendor/modernc.org/libc/stdlib/capi_linux_arm64.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								vendor/modernc.org/libc/stdlib/capi_linux_arm64.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,5 @@
 | 
			
		||||
// Code generated by 'ccgo stdlib/gen.c -crt-import-path  -export-defines  -export-enums  -export-externs X -export-fields F -export-structs  -export-typedefs  -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o stdlib/stdlib_linux_arm64.go -pkgname stdlib', DO NOT EDIT.
 | 
			
		||||
 | 
			
		||||
package stdlib
 | 
			
		||||
 | 
			
		||||
var CAPI = map[string]struct{}{}
 | 
			
		||||
							
								
								
									
										5
									
								
								vendor/modernc.org/libc/stdlib/capi_linux_s390x.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								vendor/modernc.org/libc/stdlib/capi_linux_s390x.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,5 @@
 | 
			
		||||
// Code generated by 'ccgo stdlib/gen.c -crt-import-path  -export-defines  -export-enums  -export-externs X -export-fields F -export-structs  -export-typedefs  -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o stdlib/stdlib_linux_s390x.go -pkgname stdlib', DO NOT EDIT.
 | 
			
		||||
 | 
			
		||||
package stdlib
 | 
			
		||||
 | 
			
		||||
var CAPI = map[string]struct{}{}
 | 
			
		||||
							
								
								
									
										5
									
								
								vendor/modernc.org/libc/stdlib/capi_netbsd_amd64.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								vendor/modernc.org/libc/stdlib/capi_netbsd_amd64.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,5 @@
 | 
			
		||||
// Code generated by 'ccgo stdlib/gen.c -crt-import-path  -export-defines  -export-enums  -export-externs X -export-fields F -export-structs  -export-typedefs  -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o stdlib/stdlib_netbsd_amd64.go -pkgname stdlib', DO NOT EDIT.
 | 
			
		||||
 | 
			
		||||
package stdlib
 | 
			
		||||
 | 
			
		||||
var CAPI = map[string]struct{}{}
 | 
			
		||||
							
								
								
									
										5
									
								
								vendor/modernc.org/libc/stdlib/capi_openbsd_amd64.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								vendor/modernc.org/libc/stdlib/capi_openbsd_amd64.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,5 @@
 | 
			
		||||
// Code generated by 'ccgo stdlib/gen.c -crt-import-path  -export-defines  -export-enums  -export-externs X -export-fields F -export-structs  -export-typedefs  -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o stdlib/stdlib_openbsd_amd64.go -pkgname stdlib', DO NOT EDIT.
 | 
			
		||||
 | 
			
		||||
package stdlib
 | 
			
		||||
 | 
			
		||||
var CAPI = map[string]struct{}{}
 | 
			
		||||
							
								
								
									
										5
									
								
								vendor/modernc.org/libc/stdlib/capi_windows_386.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								vendor/modernc.org/libc/stdlib/capi_windows_386.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,5 @@
 | 
			
		||||
// Code generated by 'ccgo stdlib/gen.c -crt-import-path  -export-defines  -export-enums  -export-externs X -export-fields F -export-structs  -export-typedefs  -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o stdlib/stdlib_windows_386.go -pkgname stdlib', DO NOT EDIT.
 | 
			
		||||
 | 
			
		||||
package stdlib
 | 
			
		||||
 | 
			
		||||
var CAPI = map[string]struct{}{}
 | 
			
		||||
							
								
								
									
										5
									
								
								vendor/modernc.org/libc/stdlib/capi_windows_amd64.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								vendor/modernc.org/libc/stdlib/capi_windows_amd64.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,5 @@
 | 
			
		||||
// Code generated by 'ccgo stdlib\gen.c -crt-import-path  -export-defines  -export-enums  -export-externs X -export-fields F -export-structs  -export-typedefs  -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o stdlib\stdlib_windows_amd64.go -pkgname stdlib', DO NOT EDIT.
 | 
			
		||||
 | 
			
		||||
package stdlib
 | 
			
		||||
 | 
			
		||||
var CAPI = map[string]struct{}{}
 | 
			
		||||
							
								
								
									
										6539
									
								
								vendor/modernc.org/libc/stdlib/stdlib_darwin_amd64.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										6539
									
								
								vendor/modernc.org/libc/stdlib/stdlib_darwin_amd64.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										4927
									
								
								vendor/modernc.org/libc/stdlib/stdlib_darwin_arm64.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										4927
									
								
								vendor/modernc.org/libc/stdlib/stdlib_darwin_arm64.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										663
									
								
								vendor/modernc.org/libc/stdlib/stdlib_freebsd_386.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										663
									
								
								vendor/modernc.org/libc/stdlib/stdlib_freebsd_386.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,663 @@
 | 
			
		||||
// Code generated by 'ccgo stdlib/gen.c -crt-import-path "" -export-defines "" -export-enums "" -export-externs X -export-fields F -export-structs "" -export-typedefs "" -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o stdlib/stdlib_freebsd_386.go -pkgname stdlib', DO NOT EDIT.
 | 
			
		||||
 | 
			
		||||
package stdlib
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"math"
 | 
			
		||||
	"reflect"
 | 
			
		||||
	"sync/atomic"
 | 
			
		||||
	"unsafe"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
var _ = math.Pi
 | 
			
		||||
var _ reflect.Kind
 | 
			
		||||
var _ atomic.Value
 | 
			
		||||
var _ unsafe.Pointer
 | 
			
		||||
 | 
			
		||||
const (
 | 
			
		||||
	EXIT_FAILURE         = 1
 | 
			
		||||
	EXIT_SUCCESS         = 0
 | 
			
		||||
	RAND_MAX             = 0x7fffffff
 | 
			
		||||
	X_ERRNO_T_DEFINED    = 0
 | 
			
		||||
	X_FILE_OFFSET_BITS   = 64
 | 
			
		||||
	X_ILP32              = 1
 | 
			
		||||
	X_MACHINE__LIMITS_H_ = 0
 | 
			
		||||
	X_MACHINE__TYPES_H_  = 0
 | 
			
		||||
	X_MKDTEMP_DECLARED   = 0
 | 
			
		||||
	X_MKSTEMP_DECLARED   = 0
 | 
			
		||||
	X_MKTEMP_DECLARED    = 0
 | 
			
		||||
	X_Nonnull            = 0
 | 
			
		||||
	X_Null_unspecified   = 0
 | 
			
		||||
	X_Nullable           = 0
 | 
			
		||||
	X_RSIZE_T_DEFINED    = 0
 | 
			
		||||
	X_RUNE_T_DECLARED    = 0
 | 
			
		||||
	X_SIZE_T_DECLARED    = 0
 | 
			
		||||
	X_STDLIB_H_          = 0
 | 
			
		||||
	X_SYS_CDEFS_H_       = 0
 | 
			
		||||
	X_SYS__TYPES_H_      = 0
 | 
			
		||||
	X_WCHAR_T_DECLARED   = 0
 | 
			
		||||
	I386                 = 1
 | 
			
		||||
	Unix                 = 1
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
type Ptrdiff_t = int32 /* <builtin>:3:26 */
 | 
			
		||||
 | 
			
		||||
type Size_t = uint32 /* <builtin>:9:23 */
 | 
			
		||||
 | 
			
		||||
type Wchar_t = int32 /* <builtin>:15:24 */
 | 
			
		||||
 | 
			
		||||
type X__builtin_va_list = uintptr /* <builtin>:46:14 */
 | 
			
		||||
type X__float128 = float64        /* <builtin>:47:21 */
 | 
			
		||||
 | 
			
		||||
// -
 | 
			
		||||
// SPDX-License-Identifier: BSD-3-Clause
 | 
			
		||||
//
 | 
			
		||||
// Copyright (c) 1990, 1993
 | 
			
		||||
//	The Regents of the University of California.  All rights reserved.
 | 
			
		||||
//
 | 
			
		||||
// Redistribution and use in source and binary forms, with or without
 | 
			
		||||
// modification, are permitted provided that the following conditions
 | 
			
		||||
// are met:
 | 
			
		||||
// 1. Redistributions of source code must retain the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer.
 | 
			
		||||
// 2. Redistributions in binary form must reproduce the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer in the
 | 
			
		||||
//    documentation and/or other materials provided with the distribution.
 | 
			
		||||
// 3. Neither the name of the University nor the names of its contributors
 | 
			
		||||
//    may be used to endorse or promote products derived from this software
 | 
			
		||||
//    without specific prior written permission.
 | 
			
		||||
//
 | 
			
		||||
// THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 | 
			
		||||
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 | 
			
		||||
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 | 
			
		||||
// ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 | 
			
		||||
// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 | 
			
		||||
// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 | 
			
		||||
// OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 | 
			
		||||
// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 | 
			
		||||
// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 | 
			
		||||
// OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 | 
			
		||||
// SUCH DAMAGE.
 | 
			
		||||
//
 | 
			
		||||
//	@(#)stdlib.h	8.5 (Berkeley) 5/19/95
 | 
			
		||||
// $FreeBSD$
 | 
			
		||||
 | 
			
		||||
// -
 | 
			
		||||
// SPDX-License-Identifier: BSD-3-Clause
 | 
			
		||||
//
 | 
			
		||||
// Copyright (c) 1991, 1993
 | 
			
		||||
//	The Regents of the University of California.  All rights reserved.
 | 
			
		||||
//
 | 
			
		||||
// This code is derived from software contributed to Berkeley by
 | 
			
		||||
// Berkeley Software Design, Inc.
 | 
			
		||||
//
 | 
			
		||||
// Redistribution and use in source and binary forms, with or without
 | 
			
		||||
// modification, are permitted provided that the following conditions
 | 
			
		||||
// are met:
 | 
			
		||||
// 1. Redistributions of source code must retain the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer.
 | 
			
		||||
// 2. Redistributions in binary form must reproduce the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer in the
 | 
			
		||||
//    documentation and/or other materials provided with the distribution.
 | 
			
		||||
// 3. Neither the name of the University nor the names of its contributors
 | 
			
		||||
//    may be used to endorse or promote products derived from this software
 | 
			
		||||
//    without specific prior written permission.
 | 
			
		||||
//
 | 
			
		||||
// THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 | 
			
		||||
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 | 
			
		||||
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 | 
			
		||||
// ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 | 
			
		||||
// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 | 
			
		||||
// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 | 
			
		||||
// OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 | 
			
		||||
// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 | 
			
		||||
// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 | 
			
		||||
// OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 | 
			
		||||
// SUCH DAMAGE.
 | 
			
		||||
//
 | 
			
		||||
//	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
 | 
			
		||||
// $FreeBSD$
 | 
			
		||||
 | 
			
		||||
// Testing against Clang-specific extensions.
 | 
			
		||||
 | 
			
		||||
// This code has been put in place to help reduce the addition of
 | 
			
		||||
// compiler specific defines in FreeBSD code.  It helps to aid in
 | 
			
		||||
// having a compiler-agnostic source tree.
 | 
			
		||||
 | 
			
		||||
// Compiler memory barriers, specific to gcc and clang.
 | 
			
		||||
 | 
			
		||||
// XXX: if __GNUC__ >= 2: not tested everywhere originally, where replaced
 | 
			
		||||
 | 
			
		||||
// Macro to test if we're using a specific version of gcc or later.
 | 
			
		||||
 | 
			
		||||
// The __CONCAT macro is used to concatenate parts of symbol names, e.g.
 | 
			
		||||
// with "#define OLD(foo) __CONCAT(old,foo)", OLD(foo) produces oldfoo.
 | 
			
		||||
// The __CONCAT macro is a bit tricky to use if it must work in non-ANSI
 | 
			
		||||
// mode -- there must be no spaces between its arguments, and for nested
 | 
			
		||||
// __CONCAT's, all the __CONCAT's must be at the left.  __CONCAT can also
 | 
			
		||||
// concatenate double-quoted strings produced by the __STRING macro, but
 | 
			
		||||
// this only works with ANSI C.
 | 
			
		||||
//
 | 
			
		||||
// __XSTRING is like __STRING, but it expands any macros in its argument
 | 
			
		||||
// first.  It is only available with ANSI C.
 | 
			
		||||
 | 
			
		||||
// Compiler-dependent macros to help declare dead (non-returning) and
 | 
			
		||||
// pure (no side effects) functions, and unused variables.  They are
 | 
			
		||||
// null except for versions of gcc that are known to support the features
 | 
			
		||||
// properly (old versions of gcc-2 supported the dead and pure features
 | 
			
		||||
// in a different (wrong) way).  If we do not provide an implementation
 | 
			
		||||
// for a given compiler, let the compile fail if it is told to use
 | 
			
		||||
// a feature that we cannot live without.
 | 
			
		||||
 | 
			
		||||
// Keywords added in C11.
 | 
			
		||||
 | 
			
		||||
// Emulation of C11 _Generic().  Unlike the previously defined C11
 | 
			
		||||
// keywords, it is not possible to implement this using exactly the same
 | 
			
		||||
// syntax.  Therefore implement something similar under the name
 | 
			
		||||
// __generic().  Unlike _Generic(), this macro can only distinguish
 | 
			
		||||
// between a single type, so it requires nested invocations to
 | 
			
		||||
// distinguish multiple cases.
 | 
			
		||||
 | 
			
		||||
// C99 Static array indices in function parameter declarations.  Syntax such as:
 | 
			
		||||
// void bar(int myArray[static 10]);
 | 
			
		||||
// is allowed in C99 but not in C++.  Define __min_size appropriately so
 | 
			
		||||
// headers using it can be compiled in either language.  Use like this:
 | 
			
		||||
// void bar(int myArray[__min_size(10)]);
 | 
			
		||||
 | 
			
		||||
// XXX: should use `#if __STDC_VERSION__ < 199901'.
 | 
			
		||||
 | 
			
		||||
// C++11 exposes a load of C99 stuff
 | 
			
		||||
 | 
			
		||||
// GCC 2.95 provides `__restrict' as an extension to C90 to support the
 | 
			
		||||
// C99-specific `restrict' type qualifier.  We happen to use `__restrict' as
 | 
			
		||||
// a way to define the `restrict' type qualifier without disturbing older
 | 
			
		||||
// software that is unaware of C99 keywords.
 | 
			
		||||
 | 
			
		||||
// GNU C version 2.96 adds explicit branch prediction so that
 | 
			
		||||
// the CPU back-end can hint the processor and also so that
 | 
			
		||||
// code blocks can be reordered such that the predicted path
 | 
			
		||||
// sees a more linear flow, thus improving cache behavior, etc.
 | 
			
		||||
//
 | 
			
		||||
// The following two macros provide us with a way to utilize this
 | 
			
		||||
// compiler feature.  Use __predict_true() if you expect the expression
 | 
			
		||||
// to evaluate to true, and __predict_false() if you expect the
 | 
			
		||||
// expression to evaluate to false.
 | 
			
		||||
//
 | 
			
		||||
// A few notes about usage:
 | 
			
		||||
//
 | 
			
		||||
//	* Generally, __predict_false() error condition checks (unless
 | 
			
		||||
//	  you have some _strong_ reason to do otherwise, in which case
 | 
			
		||||
//	  document it), and/or __predict_true() `no-error' condition
 | 
			
		||||
//	  checks, assuming you want to optimize for the no-error case.
 | 
			
		||||
//
 | 
			
		||||
//	* Other than that, if you don't know the likelihood of a test
 | 
			
		||||
//	  succeeding from empirical or other `hard' evidence, don't
 | 
			
		||||
//	  make predictions.
 | 
			
		||||
//
 | 
			
		||||
//	* These are meant to be used in places that are run `a lot'.
 | 
			
		||||
//	  It is wasteful to make predictions in code that is run
 | 
			
		||||
//	  seldomly (e.g. at subsystem initialization time) as the
 | 
			
		||||
//	  basic block reordering that this affects can often generate
 | 
			
		||||
//	  larger code.
 | 
			
		||||
 | 
			
		||||
// We define this here since <stddef.h>, <sys/queue.h>, and <sys/types.h>
 | 
			
		||||
// require it.
 | 
			
		||||
 | 
			
		||||
// Given the pointer x to the member m of the struct s, return
 | 
			
		||||
// a pointer to the containing structure.  When using GCC, we first
 | 
			
		||||
// assign pointer x to a local variable, to check that its type is
 | 
			
		||||
// compatible with member m.
 | 
			
		||||
 | 
			
		||||
// Compiler-dependent macros to declare that functions take printf-like
 | 
			
		||||
// or scanf-like arguments.  They are null except for versions of gcc
 | 
			
		||||
// that are known to support the features properly (old versions of gcc-2
 | 
			
		||||
// didn't permit keeping the keywords out of the application namespace).
 | 
			
		||||
 | 
			
		||||
// Compiler-dependent macros that rely on FreeBSD-specific extensions.
 | 
			
		||||
 | 
			
		||||
// Embed the rcs id of a source file in the resulting library.  Note that in
 | 
			
		||||
// more recent ELF binutils, we use .ident allowing the ID to be stripped.
 | 
			
		||||
// Usage:
 | 
			
		||||
//	__FBSDID("$FreeBSD$");
 | 
			
		||||
 | 
			
		||||
// -
 | 
			
		||||
// The following definitions are an extension of the behavior originally
 | 
			
		||||
// implemented in <sys/_posix.h>, but with a different level of granularity.
 | 
			
		||||
// POSIX.1 requires that the macros we test be defined before any standard
 | 
			
		||||
// header file is included.
 | 
			
		||||
//
 | 
			
		||||
// Here's a quick run-down of the versions:
 | 
			
		||||
//  defined(_POSIX_SOURCE)		1003.1-1988
 | 
			
		||||
//  _POSIX_C_SOURCE == 1		1003.1-1990
 | 
			
		||||
//  _POSIX_C_SOURCE == 2		1003.2-1992 C Language Binding Option
 | 
			
		||||
//  _POSIX_C_SOURCE == 199309		1003.1b-1993
 | 
			
		||||
//  _POSIX_C_SOURCE == 199506		1003.1c-1995, 1003.1i-1995,
 | 
			
		||||
//					and the omnibus ISO/IEC 9945-1: 1996
 | 
			
		||||
//  _POSIX_C_SOURCE == 200112		1003.1-2001
 | 
			
		||||
//  _POSIX_C_SOURCE == 200809		1003.1-2008
 | 
			
		||||
//
 | 
			
		||||
// In addition, the X/Open Portability Guide, which is now the Single UNIX
 | 
			
		||||
// Specification, defines a feature-test macro which indicates the version of
 | 
			
		||||
// that specification, and which subsumes _POSIX_C_SOURCE.
 | 
			
		||||
//
 | 
			
		||||
// Our macros begin with two underscores to avoid namespace screwage.
 | 
			
		||||
 | 
			
		||||
// Deal with IEEE Std. 1003.1-1990, in which _POSIX_C_SOURCE == 1.
 | 
			
		||||
 | 
			
		||||
// Deal with IEEE Std. 1003.2-1992, in which _POSIX_C_SOURCE == 2.
 | 
			
		||||
 | 
			
		||||
// Deal with various X/Open Portability Guides and Single UNIX Spec.
 | 
			
		||||
 | 
			
		||||
// Deal with all versions of POSIX.  The ordering relative to the tests above is
 | 
			
		||||
// important.
 | 
			
		||||
// -
 | 
			
		||||
// Deal with _ANSI_SOURCE:
 | 
			
		||||
// If it is defined, and no other compilation environment is explicitly
 | 
			
		||||
// requested, then define our internal feature-test macros to zero.  This
 | 
			
		||||
// makes no difference to the preprocessor (undefined symbols in preprocessing
 | 
			
		||||
// expressions are defined to have value zero), but makes it more convenient for
 | 
			
		||||
// a test program to print out the values.
 | 
			
		||||
//
 | 
			
		||||
// If a program mistakenly defines _ANSI_SOURCE and some other macro such as
 | 
			
		||||
// _POSIX_C_SOURCE, we will assume that it wants the broader compilation
 | 
			
		||||
// environment (and in fact we will never get here).
 | 
			
		||||
 | 
			
		||||
// User override __EXT1_VISIBLE
 | 
			
		||||
 | 
			
		||||
// Old versions of GCC use non-standard ARM arch symbols; acle-compat.h
 | 
			
		||||
// translates them to __ARM_ARCH and the modern feature symbols defined by ARM.
 | 
			
		||||
 | 
			
		||||
// Nullability qualifiers: currently only supported by Clang.
 | 
			
		||||
 | 
			
		||||
// Type Safety Checking
 | 
			
		||||
//
 | 
			
		||||
// Clang provides additional attributes to enable checking type safety
 | 
			
		||||
// properties that cannot be enforced by the C type system.
 | 
			
		||||
 | 
			
		||||
// Lock annotations.
 | 
			
		||||
//
 | 
			
		||||
// Clang provides support for doing basic thread-safety tests at
 | 
			
		||||
// compile-time, by marking which locks will/should be held when
 | 
			
		||||
// entering/leaving a functions.
 | 
			
		||||
//
 | 
			
		||||
// Furthermore, it is also possible to annotate variables and structure
 | 
			
		||||
// members to enforce that they are only accessed when certain locks are
 | 
			
		||||
// held.
 | 
			
		||||
 | 
			
		||||
// Structure implements a lock.
 | 
			
		||||
 | 
			
		||||
// Function acquires an exclusive or shared lock.
 | 
			
		||||
 | 
			
		||||
// Function attempts to acquire an exclusive or shared lock.
 | 
			
		||||
 | 
			
		||||
// Function releases a lock.
 | 
			
		||||
 | 
			
		||||
// Function asserts that an exclusive or shared lock is held.
 | 
			
		||||
 | 
			
		||||
// Function requires that an exclusive or shared lock is or is not held.
 | 
			
		||||
 | 
			
		||||
// Function should not be analyzed.
 | 
			
		||||
 | 
			
		||||
// Function or variable should not be sanitized, e.g., by AddressSanitizer.
 | 
			
		||||
// GCC has the nosanitize attribute, but as a function attribute only, and
 | 
			
		||||
// warns on use as a variable attribute.
 | 
			
		||||
 | 
			
		||||
// Guard variables and structure members by lock.
 | 
			
		||||
 | 
			
		||||
// Alignment builtins for better type checking and improved code generation.
 | 
			
		||||
// Provide fallback versions for other compilers (GCC/Clang < 10):
 | 
			
		||||
 | 
			
		||||
// -
 | 
			
		||||
// SPDX-License-Identifier: BSD-2-Clause-FreeBSD
 | 
			
		||||
//
 | 
			
		||||
// Copyright (c) 2003 Marcel Moolenaar
 | 
			
		||||
// All rights reserved.
 | 
			
		||||
//
 | 
			
		||||
// Redistribution and use in source and binary forms, with or without
 | 
			
		||||
// modification, are permitted provided that the following conditions
 | 
			
		||||
// are met:
 | 
			
		||||
//
 | 
			
		||||
// 1. Redistributions of source code must retain the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer.
 | 
			
		||||
// 2. Redistributions in binary form must reproduce the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer in the
 | 
			
		||||
//    documentation and/or other materials provided with the distribution.
 | 
			
		||||
//
 | 
			
		||||
// THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
 | 
			
		||||
// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
 | 
			
		||||
// OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
 | 
			
		||||
// IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
 | 
			
		||||
// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
 | 
			
		||||
// NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
 | 
			
		||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
 | 
			
		||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 | 
			
		||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 | 
			
		||||
// THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 | 
			
		||||
//
 | 
			
		||||
// $FreeBSD$
 | 
			
		||||
 | 
			
		||||
// -
 | 
			
		||||
// SPDX-License-Identifier: BSD-2-Clause-FreeBSD
 | 
			
		||||
//
 | 
			
		||||
// Copyright (c) 2002 Mike Barcroft <mike@FreeBSD.org>
 | 
			
		||||
// All rights reserved.
 | 
			
		||||
//
 | 
			
		||||
// Redistribution and use in source and binary forms, with or without
 | 
			
		||||
// modification, are permitted provided that the following conditions
 | 
			
		||||
// are met:
 | 
			
		||||
// 1. Redistributions of source code must retain the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer.
 | 
			
		||||
// 2. Redistributions in binary form must reproduce the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer in the
 | 
			
		||||
//    documentation and/or other materials provided with the distribution.
 | 
			
		||||
//
 | 
			
		||||
// THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
 | 
			
		||||
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 | 
			
		||||
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 | 
			
		||||
// ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
 | 
			
		||||
// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 | 
			
		||||
// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 | 
			
		||||
// OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 | 
			
		||||
// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 | 
			
		||||
// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 | 
			
		||||
// OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 | 
			
		||||
// SUCH DAMAGE.
 | 
			
		||||
//
 | 
			
		||||
// $FreeBSD$
 | 
			
		||||
 | 
			
		||||
// -
 | 
			
		||||
// SPDX-License-Identifier: BSD-3-Clause
 | 
			
		||||
//
 | 
			
		||||
// Copyright (c) 1991, 1993
 | 
			
		||||
//	The Regents of the University of California.  All rights reserved.
 | 
			
		||||
//
 | 
			
		||||
// This code is derived from software contributed to Berkeley by
 | 
			
		||||
// Berkeley Software Design, Inc.
 | 
			
		||||
//
 | 
			
		||||
// Redistribution and use in source and binary forms, with or without
 | 
			
		||||
// modification, are permitted provided that the following conditions
 | 
			
		||||
// are met:
 | 
			
		||||
// 1. Redistributions of source code must retain the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer.
 | 
			
		||||
// 2. Redistributions in binary form must reproduce the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer in the
 | 
			
		||||
//    documentation and/or other materials provided with the distribution.
 | 
			
		||||
// 3. Neither the name of the University nor the names of its contributors
 | 
			
		||||
//    may be used to endorse or promote products derived from this software
 | 
			
		||||
//    without specific prior written permission.
 | 
			
		||||
//
 | 
			
		||||
// THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 | 
			
		||||
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 | 
			
		||||
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 | 
			
		||||
// ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 | 
			
		||||
// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 | 
			
		||||
// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 | 
			
		||||
// OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 | 
			
		||||
// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 | 
			
		||||
// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 | 
			
		||||
// OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 | 
			
		||||
// SUCH DAMAGE.
 | 
			
		||||
//
 | 
			
		||||
//	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
 | 
			
		||||
// $FreeBSD$
 | 
			
		||||
 | 
			
		||||
// -
 | 
			
		||||
// This file is in the public domain.
 | 
			
		||||
// $FreeBSD$
 | 
			
		||||
 | 
			
		||||
// -
 | 
			
		||||
// SPDX-License-Identifier: BSD-4-Clause
 | 
			
		||||
//
 | 
			
		||||
// Copyright (c) 2002 Mike Barcroft <mike@FreeBSD.org>
 | 
			
		||||
// Copyright (c) 1990, 1993
 | 
			
		||||
//	The Regents of the University of California.  All rights reserved.
 | 
			
		||||
//
 | 
			
		||||
// Redistribution and use in source and binary forms, with or without
 | 
			
		||||
// modification, are permitted provided that the following conditions
 | 
			
		||||
// are met:
 | 
			
		||||
// 1. Redistributions of source code must retain the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer.
 | 
			
		||||
// 2. Redistributions in binary form must reproduce the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer in the
 | 
			
		||||
//    documentation and/or other materials provided with the distribution.
 | 
			
		||||
// 3. All advertising materials mentioning features or use of this software
 | 
			
		||||
//    must display the following acknowledgement:
 | 
			
		||||
//	This product includes software developed by the University of
 | 
			
		||||
//	California, Berkeley and its contributors.
 | 
			
		||||
// 4. Neither the name of the University nor the names of its contributors
 | 
			
		||||
//    may be used to endorse or promote products derived from this software
 | 
			
		||||
//    without specific prior written permission.
 | 
			
		||||
//
 | 
			
		||||
// THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 | 
			
		||||
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 | 
			
		||||
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 | 
			
		||||
// ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 | 
			
		||||
// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 | 
			
		||||
// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 | 
			
		||||
// OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 | 
			
		||||
// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 | 
			
		||||
// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 | 
			
		||||
// OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 | 
			
		||||
// SUCH DAMAGE.
 | 
			
		||||
//
 | 
			
		||||
//	From: @(#)ansi.h	8.2 (Berkeley) 1/4/94
 | 
			
		||||
//	From: @(#)types.h	8.3 (Berkeley) 1/5/94
 | 
			
		||||
// $FreeBSD$
 | 
			
		||||
 | 
			
		||||
// -
 | 
			
		||||
// This file is in the public domain.
 | 
			
		||||
// $FreeBSD$
 | 
			
		||||
 | 
			
		||||
// -
 | 
			
		||||
// SPDX-License-Identifier: BSD-3-Clause
 | 
			
		||||
//
 | 
			
		||||
// Copyright (c) 1988, 1993
 | 
			
		||||
//	The Regents of the University of California.  All rights reserved.
 | 
			
		||||
//
 | 
			
		||||
// Redistribution and use in source and binary forms, with or without
 | 
			
		||||
// modification, are permitted provided that the following conditions
 | 
			
		||||
// are met:
 | 
			
		||||
// 1. Redistributions of source code must retain the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer.
 | 
			
		||||
// 2. Redistributions in binary form must reproduce the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer in the
 | 
			
		||||
//    documentation and/or other materials provided with the distribution.
 | 
			
		||||
// 3. Neither the name of the University nor the names of its contributors
 | 
			
		||||
//    may be used to endorse or promote products derived from this software
 | 
			
		||||
//    without specific prior written permission.
 | 
			
		||||
//
 | 
			
		||||
// THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 | 
			
		||||
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 | 
			
		||||
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 | 
			
		||||
// ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 | 
			
		||||
// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 | 
			
		||||
// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 | 
			
		||||
// OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 | 
			
		||||
// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 | 
			
		||||
// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 | 
			
		||||
// OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 | 
			
		||||
// SUCH DAMAGE.
 | 
			
		||||
//
 | 
			
		||||
//	@(#)limits.h	8.3 (Berkeley) 1/4/94
 | 
			
		||||
// $FreeBSD$
 | 
			
		||||
 | 
			
		||||
// According to ANSI (section 2.2.4.2), the values below must be usable by
 | 
			
		||||
// #if preprocessing directives.  Additionally, the expression must have the
 | 
			
		||||
// same type as would an expression that is an object of the corresponding
 | 
			
		||||
// type converted according to the integral promotions.  The subtraction for
 | 
			
		||||
// INT_MIN, etc., is so the value is not unsigned; e.g., 0x80000000 is an
 | 
			
		||||
// unsigned int for 32-bit two's complement ANSI compilers (section 3.1.3.2).
 | 
			
		||||
 | 
			
		||||
// max value for an unsigned long long
 | 
			
		||||
 | 
			
		||||
// Minimum signal stack size.
 | 
			
		||||
 | 
			
		||||
// Basic types upon which most other types are built.
 | 
			
		||||
type X__int8_t = int8     /* _types.h:55:22 */
 | 
			
		||||
type X__uint8_t = uint8   /* _types.h:56:24 */
 | 
			
		||||
type X__int16_t = int16   /* _types.h:57:17 */
 | 
			
		||||
type X__uint16_t = uint16 /* _types.h:58:25 */
 | 
			
		||||
type X__int32_t = int32   /* _types.h:59:15 */
 | 
			
		||||
type X__uint32_t = uint32 /* _types.h:60:23 */
 | 
			
		||||
 | 
			
		||||
type X__int64_t = int64 /* _types.h:66:20 */
 | 
			
		||||
 | 
			
		||||
type X__uint64_t = uint64 /* _types.h:68:28 */
 | 
			
		||||
 | 
			
		||||
// Standard type definitions.
 | 
			
		||||
type X__clock_t = uint32             /* _types.h:84:23 */
 | 
			
		||||
type X__critical_t = X__int32_t      /* _types.h:85:19 */
 | 
			
		||||
type X__double_t = float64           /* _types.h:87:21 */
 | 
			
		||||
type X__float_t = float64            /* _types.h:88:21 */
 | 
			
		||||
type X__intfptr_t = X__int32_t       /* _types.h:90:19 */
 | 
			
		||||
type X__intptr_t = X__int32_t        /* _types.h:91:19 */
 | 
			
		||||
type X__intmax_t = X__int64_t        /* _types.h:93:19 */
 | 
			
		||||
type X__int_fast8_t = X__int32_t     /* _types.h:94:19 */
 | 
			
		||||
type X__int_fast16_t = X__int32_t    /* _types.h:95:19 */
 | 
			
		||||
type X__int_fast32_t = X__int32_t    /* _types.h:96:19 */
 | 
			
		||||
type X__int_fast64_t = X__int64_t    /* _types.h:97:19 */
 | 
			
		||||
type X__int_least8_t = X__int8_t     /* _types.h:98:18 */
 | 
			
		||||
type X__int_least16_t = X__int16_t   /* _types.h:99:19 */
 | 
			
		||||
type X__int_least32_t = X__int32_t   /* _types.h:100:19 */
 | 
			
		||||
type X__int_least64_t = X__int64_t   /* _types.h:101:19 */
 | 
			
		||||
type X__ptrdiff_t = X__int32_t       /* _types.h:112:19 */
 | 
			
		||||
type X__register_t = X__int32_t      /* _types.h:113:19 */
 | 
			
		||||
type X__segsz_t = X__int32_t         /* _types.h:114:19 */
 | 
			
		||||
type X__size_t = X__uint32_t         /* _types.h:115:20 */
 | 
			
		||||
type X__ssize_t = X__int32_t         /* _types.h:116:19 */
 | 
			
		||||
type X__time_t = X__int32_t          /* _types.h:117:19 */
 | 
			
		||||
type X__uintfptr_t = X__uint32_t     /* _types.h:118:20 */
 | 
			
		||||
type X__uintptr_t = X__uint32_t      /* _types.h:119:20 */
 | 
			
		||||
type X__uintmax_t = X__uint64_t      /* _types.h:121:20 */
 | 
			
		||||
type X__uint_fast8_t = X__uint32_t   /* _types.h:122:20 */
 | 
			
		||||
type X__uint_fast16_t = X__uint32_t  /* _types.h:123:20 */
 | 
			
		||||
type X__uint_fast32_t = X__uint32_t  /* _types.h:124:20 */
 | 
			
		||||
type X__uint_fast64_t = X__uint64_t  /* _types.h:125:20 */
 | 
			
		||||
type X__uint_least8_t = X__uint8_t   /* _types.h:126:19 */
 | 
			
		||||
type X__uint_least16_t = X__uint16_t /* _types.h:127:20 */
 | 
			
		||||
type X__uint_least32_t = X__uint32_t /* _types.h:128:20 */
 | 
			
		||||
type X__uint_least64_t = X__uint64_t /* _types.h:129:20 */
 | 
			
		||||
type X__u_register_t = X__uint32_t   /* _types.h:136:20 */
 | 
			
		||||
type X__vm_offset_t = X__uint32_t    /* _types.h:137:20 */
 | 
			
		||||
type X__vm_paddr_t = X__uint64_t     /* _types.h:138:20 */
 | 
			
		||||
type X__vm_size_t = X__uint32_t      /* _types.h:139:20 */
 | 
			
		||||
type X___wchar_t = int32             /* _types.h:141:14 */
 | 
			
		||||
 | 
			
		||||
// Standard type definitions.
 | 
			
		||||
type X__blksize_t = X__int32_t   /* _types.h:40:19 */ // file block size
 | 
			
		||||
type X__blkcnt_t = X__int64_t    /* _types.h:41:19 */ // file block count
 | 
			
		||||
type X__clockid_t = X__int32_t   /* _types.h:42:19 */ // clock_gettime()...
 | 
			
		||||
type X__fflags_t = X__uint32_t   /* _types.h:43:20 */ // file flags
 | 
			
		||||
type X__fsblkcnt_t = X__uint64_t /* _types.h:44:20 */
 | 
			
		||||
type X__fsfilcnt_t = X__uint64_t /* _types.h:45:20 */
 | 
			
		||||
type X__gid_t = X__uint32_t      /* _types.h:46:20 */
 | 
			
		||||
type X__id_t = X__int64_t        /* _types.h:47:19 */ // can hold a gid_t, pid_t, or uid_t
 | 
			
		||||
type X__ino_t = X__uint64_t      /* _types.h:48:20 */ // inode number
 | 
			
		||||
type X__key_t = int32            /* _types.h:49:15 */ // IPC key (for Sys V IPC)
 | 
			
		||||
type X__lwpid_t = X__int32_t     /* _types.h:50:19 */ // Thread ID (a.k.a. LWP)
 | 
			
		||||
type X__mode_t = X__uint16_t     /* _types.h:51:20 */ // permissions
 | 
			
		||||
type X__accmode_t = int32        /* _types.h:52:14 */ // access permissions
 | 
			
		||||
type X__nl_item = int32          /* _types.h:53:14 */
 | 
			
		||||
type X__nlink_t = X__uint64_t    /* _types.h:54:20 */ // link count
 | 
			
		||||
type X__off_t = X__int64_t       /* _types.h:55:19 */ // file offset
 | 
			
		||||
type X__off64_t = X__int64_t     /* _types.h:56:19 */ // file offset (alias)
 | 
			
		||||
type X__pid_t = X__int32_t       /* _types.h:57:19 */ // process [group]
 | 
			
		||||
type X__rlim_t = X__int64_t      /* _types.h:58:19 */ // resource limit - intentionally
 | 
			
		||||
// signed, because of legacy code
 | 
			
		||||
// that uses -1 for RLIM_INFINITY
 | 
			
		||||
type X__sa_family_t = X__uint8_t /* _types.h:61:19 */
 | 
			
		||||
type X__socklen_t = X__uint32_t  /* _types.h:62:20 */
 | 
			
		||||
type X__suseconds_t = int32      /* _types.h:63:15 */ // microseconds (signed)
 | 
			
		||||
type X__timer_t = uintptr        /* _types.h:64:24 */ // timer_gettime()...
 | 
			
		||||
type X__mqd_t = uintptr          /* _types.h:65:21 */ // mq_open()...
 | 
			
		||||
type X__uid_t = X__uint32_t      /* _types.h:66:20 */
 | 
			
		||||
type X__useconds_t = uint32      /* _types.h:67:22 */ // microseconds (unsigned)
 | 
			
		||||
type X__cpuwhich_t = int32       /* _types.h:68:14 */ // which parameter for cpuset.
 | 
			
		||||
type X__cpulevel_t = int32       /* _types.h:69:14 */ // level parameter for cpuset.
 | 
			
		||||
type X__cpusetid_t = int32       /* _types.h:70:14 */ // cpuset identifier.
 | 
			
		||||
type X__daddr_t = X__int64_t     /* _types.h:71:19 */ // bwrite(3), FIOBMAP2, etc
 | 
			
		||||
 | 
			
		||||
// Unusual type definitions.
 | 
			
		||||
// rune_t is declared to be an ``int'' instead of the more natural
 | 
			
		||||
// ``unsigned long'' or ``long''.  Two things are happening here.  It is not
 | 
			
		||||
// unsigned so that EOF (-1) can be naturally assigned to it and used.  Also,
 | 
			
		||||
// it looks like 10646 will be a 31 bit standard.  This means that if your
 | 
			
		||||
// ints cannot hold 32 bits, you will be in trouble.  The reason an int was
 | 
			
		||||
// chosen over a long is that the is*() and to*() routines take ints (says
 | 
			
		||||
// ANSI C), but they use __ct_rune_t instead of int.
 | 
			
		||||
//
 | 
			
		||||
// NOTE: rune_t is not covered by ANSI nor other standards, and should not
 | 
			
		||||
// be instantiated outside of lib/libc/locale.  Use wchar_t.  wint_t and
 | 
			
		||||
// rune_t must be the same type.  Also, wint_t should be able to hold all
 | 
			
		||||
// members of the largest character set plus one extra value (WEOF), and
 | 
			
		||||
// must be at least 16 bits.
 | 
			
		||||
type X__ct_rune_t = int32     /* _types.h:91:14 */ // arg type for ctype funcs
 | 
			
		||||
type X__rune_t = X__ct_rune_t /* _types.h:92:21 */ // rune_t (see above)
 | 
			
		||||
type X__wint_t = X__ct_rune_t /* _types.h:93:21 */ // wint_t (see above)
 | 
			
		||||
 | 
			
		||||
// Clang already provides these types as built-ins, but only in C++ mode.
 | 
			
		||||
type X__char16_t = X__uint_least16_t /* _types.h:97:26 */
 | 
			
		||||
type X__char32_t = X__uint_least32_t /* _types.h:98:26 */
 | 
			
		||||
// In C++11, char16_t and char32_t are built-in types.
 | 
			
		||||
 | 
			
		||||
type X__max_align_t = struct {
 | 
			
		||||
	F__max_align1 int64
 | 
			
		||||
	F__max_align2 float64
 | 
			
		||||
} /* _types.h:111:3 */
 | 
			
		||||
 | 
			
		||||
type X__dev_t = X__uint64_t /* _types.h:113:20 */ // device number
 | 
			
		||||
 | 
			
		||||
type X__fixpt_t = X__uint32_t /* _types.h:115:20 */ // fixed point number
 | 
			
		||||
 | 
			
		||||
// mbstate_t is an opaque object to keep conversion state during multibyte
 | 
			
		||||
// stream conversions.
 | 
			
		||||
type X__mbstate_t = struct {
 | 
			
		||||
	F__ccgo_pad1 [0]uint32
 | 
			
		||||
	F__mbstate8  [128]int8
 | 
			
		||||
} /* _types.h:124:3 */
 | 
			
		||||
 | 
			
		||||
type X__rman_res_t = X__uintmax_t /* _types.h:126:25 */
 | 
			
		||||
 | 
			
		||||
// Types for varargs. These are all provided by builtin types these
 | 
			
		||||
// days, so centralize their definition.
 | 
			
		||||
type X__va_list = X__builtin_va_list /* _types.h:133:27 */ // internally known to gcc
 | 
			
		||||
type X__gnuc_va_list = X__va_list    /* _types.h:140:20 */ // compatibility w/GNU headers
 | 
			
		||||
 | 
			
		||||
// When the following macro is defined, the system uses 64-bit inode numbers.
 | 
			
		||||
// Programs can use this to avoid including <sys/param.h>, with its associated
 | 
			
		||||
// namespace pollution.
 | 
			
		||||
 | 
			
		||||
type Rune_t = X__rune_t /* stdlib.h:46:18 */
 | 
			
		||||
 | 
			
		||||
type Div_t = struct {
 | 
			
		||||
	Fquot int32
 | 
			
		||||
	Frem  int32
 | 
			
		||||
} /* stdlib.h:66:3 */
 | 
			
		||||
 | 
			
		||||
type Ldiv_t = struct {
 | 
			
		||||
	Fquot int32
 | 
			
		||||
	Frem  int32
 | 
			
		||||
} /* stdlib.h:71:3 */
 | 
			
		||||
 | 
			
		||||
// Functions added in C99 which we make conditionally available in the
 | 
			
		||||
// BSD^C89 namespace if the compiler supports `long long'.
 | 
			
		||||
// The #if test is more complicated than it ought to be because
 | 
			
		||||
// __BSD_VISIBLE implies __ISO_C_VISIBLE == 1999 *even if* `long long'
 | 
			
		||||
// is not supported in the compilation environment (which therefore means
 | 
			
		||||
// that it can't really be ISO C99).
 | 
			
		||||
//
 | 
			
		||||
// (The only other extension made by C99 in thie header is _Exit().)
 | 
			
		||||
// LONGLONG
 | 
			
		||||
type Lldiv_t = struct {
 | 
			
		||||
	Fquot int64
 | 
			
		||||
	Frem  int64
 | 
			
		||||
} /* stdlib.h:142:3 */ // getsubopt(3) external variable
 | 
			
		||||
 | 
			
		||||
type Rsize_t = Size_t /* stdlib.h:340:16 */
 | 
			
		||||
 | 
			
		||||
type Errno_t = int32 /* stdlib.h:345:13 */
 | 
			
		||||
 | 
			
		||||
// K.3.6
 | 
			
		||||
type Constraint_handler_t = uintptr /* stdlib.h:349:14 */
 | 
			
		||||
 | 
			
		||||
var _ int8 /* gen.c:2:13: */
 | 
			
		||||
							
								
								
									
										668
									
								
								vendor/modernc.org/libc/stdlib/stdlib_freebsd_amd64.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										668
									
								
								vendor/modernc.org/libc/stdlib/stdlib_freebsd_amd64.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,668 @@
 | 
			
		||||
// Code generated by 'ccgo stdlib/gen.c -crt-import-path "" -export-defines "" -export-enums "" -export-externs X -export-fields F -export-structs "" -export-typedefs "" -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o stdlib/stdlib_freebsd_amd64.go -pkgname stdlib', DO NOT EDIT.
 | 
			
		||||
 | 
			
		||||
package stdlib
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"math"
 | 
			
		||||
	"reflect"
 | 
			
		||||
	"sync/atomic"
 | 
			
		||||
	"unsafe"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
var _ = math.Pi
 | 
			
		||||
var _ reflect.Kind
 | 
			
		||||
var _ atomic.Value
 | 
			
		||||
var _ unsafe.Pointer
 | 
			
		||||
 | 
			
		||||
const (
 | 
			
		||||
	EXIT_FAILURE         = 1
 | 
			
		||||
	EXIT_SUCCESS         = 0
 | 
			
		||||
	RAND_MAX             = 0x7fffffff
 | 
			
		||||
	X_ERRNO_T_DEFINED    = 0
 | 
			
		||||
	X_FILE_OFFSET_BITS   = 64
 | 
			
		||||
	X_LP64               = 1
 | 
			
		||||
	X_MACHINE__LIMITS_H_ = 0
 | 
			
		||||
	X_MACHINE__TYPES_H_  = 0
 | 
			
		||||
	X_MKDTEMP_DECLARED   = 0
 | 
			
		||||
	X_MKSTEMP_DECLARED   = 0
 | 
			
		||||
	X_MKTEMP_DECLARED    = 0
 | 
			
		||||
	X_Nonnull            = 0
 | 
			
		||||
	X_Null_unspecified   = 0
 | 
			
		||||
	X_Nullable           = 0
 | 
			
		||||
	X_RSIZE_T_DEFINED    = 0
 | 
			
		||||
	X_RUNE_T_DECLARED    = 0
 | 
			
		||||
	X_SIZE_T_DECLARED    = 0
 | 
			
		||||
	X_STDLIB_H_          = 0
 | 
			
		||||
	X_SYS_CDEFS_H_       = 0
 | 
			
		||||
	X_SYS__TYPES_H_      = 0
 | 
			
		||||
	X_WCHAR_T_DECLARED   = 0
 | 
			
		||||
	Unix                 = 1
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
type Ptrdiff_t = int64 /* <builtin>:3:26 */
 | 
			
		||||
 | 
			
		||||
type Size_t = uint64 /* <builtin>:9:23 */
 | 
			
		||||
 | 
			
		||||
type Wchar_t = int32 /* <builtin>:15:24 */
 | 
			
		||||
 | 
			
		||||
type X__int128_t = struct {
 | 
			
		||||
	Flo int64
 | 
			
		||||
	Fhi int64
 | 
			
		||||
} /* <builtin>:21:43 */ // must match modernc.org/mathutil.Int128
 | 
			
		||||
type X__uint128_t = struct {
 | 
			
		||||
	Flo uint64
 | 
			
		||||
	Fhi uint64
 | 
			
		||||
} /* <builtin>:22:44 */ // must match modernc.org/mathutil.Int128
 | 
			
		||||
 | 
			
		||||
type X__builtin_va_list = uintptr /* <builtin>:46:14 */
 | 
			
		||||
type X__float128 = float64        /* <builtin>:47:21 */
 | 
			
		||||
 | 
			
		||||
// -
 | 
			
		||||
// SPDX-License-Identifier: BSD-3-Clause
 | 
			
		||||
//
 | 
			
		||||
// Copyright (c) 1990, 1993
 | 
			
		||||
//	The Regents of the University of California.  All rights reserved.
 | 
			
		||||
//
 | 
			
		||||
// Redistribution and use in source and binary forms, with or without
 | 
			
		||||
// modification, are permitted provided that the following conditions
 | 
			
		||||
// are met:
 | 
			
		||||
// 1. Redistributions of source code must retain the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer.
 | 
			
		||||
// 2. Redistributions in binary form must reproduce the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer in the
 | 
			
		||||
//    documentation and/or other materials provided with the distribution.
 | 
			
		||||
// 3. Neither the name of the University nor the names of its contributors
 | 
			
		||||
//    may be used to endorse or promote products derived from this software
 | 
			
		||||
//    without specific prior written permission.
 | 
			
		||||
//
 | 
			
		||||
// THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 | 
			
		||||
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 | 
			
		||||
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 | 
			
		||||
// ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 | 
			
		||||
// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 | 
			
		||||
// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 | 
			
		||||
// OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 | 
			
		||||
// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 | 
			
		||||
// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 | 
			
		||||
// OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 | 
			
		||||
// SUCH DAMAGE.
 | 
			
		||||
//
 | 
			
		||||
//	@(#)stdlib.h	8.5 (Berkeley) 5/19/95
 | 
			
		||||
// $FreeBSD$
 | 
			
		||||
 | 
			
		||||
// -
 | 
			
		||||
// SPDX-License-Identifier: BSD-3-Clause
 | 
			
		||||
//
 | 
			
		||||
// Copyright (c) 1991, 1993
 | 
			
		||||
//	The Regents of the University of California.  All rights reserved.
 | 
			
		||||
//
 | 
			
		||||
// This code is derived from software contributed to Berkeley by
 | 
			
		||||
// Berkeley Software Design, Inc.
 | 
			
		||||
//
 | 
			
		||||
// Redistribution and use in source and binary forms, with or without
 | 
			
		||||
// modification, are permitted provided that the following conditions
 | 
			
		||||
// are met:
 | 
			
		||||
// 1. Redistributions of source code must retain the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer.
 | 
			
		||||
// 2. Redistributions in binary form must reproduce the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer in the
 | 
			
		||||
//    documentation and/or other materials provided with the distribution.
 | 
			
		||||
// 3. Neither the name of the University nor the names of its contributors
 | 
			
		||||
//    may be used to endorse or promote products derived from this software
 | 
			
		||||
//    without specific prior written permission.
 | 
			
		||||
//
 | 
			
		||||
// THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 | 
			
		||||
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 | 
			
		||||
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 | 
			
		||||
// ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 | 
			
		||||
// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 | 
			
		||||
// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 | 
			
		||||
// OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 | 
			
		||||
// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 | 
			
		||||
// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 | 
			
		||||
// OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 | 
			
		||||
// SUCH DAMAGE.
 | 
			
		||||
//
 | 
			
		||||
//	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
 | 
			
		||||
// $FreeBSD$
 | 
			
		||||
 | 
			
		||||
// Testing against Clang-specific extensions.
 | 
			
		||||
 | 
			
		||||
// This code has been put in place to help reduce the addition of
 | 
			
		||||
// compiler specific defines in FreeBSD code.  It helps to aid in
 | 
			
		||||
// having a compiler-agnostic source tree.
 | 
			
		||||
 | 
			
		||||
// Compiler memory barriers, specific to gcc and clang.
 | 
			
		||||
 | 
			
		||||
// XXX: if __GNUC__ >= 2: not tested everywhere originally, where replaced
 | 
			
		||||
 | 
			
		||||
// Macro to test if we're using a specific version of gcc or later.
 | 
			
		||||
 | 
			
		||||
// The __CONCAT macro is used to concatenate parts of symbol names, e.g.
 | 
			
		||||
// with "#define OLD(foo) __CONCAT(old,foo)", OLD(foo) produces oldfoo.
 | 
			
		||||
// The __CONCAT macro is a bit tricky to use if it must work in non-ANSI
 | 
			
		||||
// mode -- there must be no spaces between its arguments, and for nested
 | 
			
		||||
// __CONCAT's, all the __CONCAT's must be at the left.  __CONCAT can also
 | 
			
		||||
// concatenate double-quoted strings produced by the __STRING macro, but
 | 
			
		||||
// this only works with ANSI C.
 | 
			
		||||
//
 | 
			
		||||
// __XSTRING is like __STRING, but it expands any macros in its argument
 | 
			
		||||
// first.  It is only available with ANSI C.
 | 
			
		||||
 | 
			
		||||
// Compiler-dependent macros to help declare dead (non-returning) and
 | 
			
		||||
// pure (no side effects) functions, and unused variables.  They are
 | 
			
		||||
// null except for versions of gcc that are known to support the features
 | 
			
		||||
// properly (old versions of gcc-2 supported the dead and pure features
 | 
			
		||||
// in a different (wrong) way).  If we do not provide an implementation
 | 
			
		||||
// for a given compiler, let the compile fail if it is told to use
 | 
			
		||||
// a feature that we cannot live without.
 | 
			
		||||
 | 
			
		||||
// Keywords added in C11.
 | 
			
		||||
 | 
			
		||||
// Emulation of C11 _Generic().  Unlike the previously defined C11
 | 
			
		||||
// keywords, it is not possible to implement this using exactly the same
 | 
			
		||||
// syntax.  Therefore implement something similar under the name
 | 
			
		||||
// __generic().  Unlike _Generic(), this macro can only distinguish
 | 
			
		||||
// between a single type, so it requires nested invocations to
 | 
			
		||||
// distinguish multiple cases.
 | 
			
		||||
 | 
			
		||||
// C99 Static array indices in function parameter declarations.  Syntax such as:
 | 
			
		||||
// void bar(int myArray[static 10]);
 | 
			
		||||
// is allowed in C99 but not in C++.  Define __min_size appropriately so
 | 
			
		||||
// headers using it can be compiled in either language.  Use like this:
 | 
			
		||||
// void bar(int myArray[__min_size(10)]);
 | 
			
		||||
 | 
			
		||||
// XXX: should use `#if __STDC_VERSION__ < 199901'.
 | 
			
		||||
 | 
			
		||||
// C++11 exposes a load of C99 stuff
 | 
			
		||||
 | 
			
		||||
// GCC 2.95 provides `__restrict' as an extension to C90 to support the
 | 
			
		||||
// C99-specific `restrict' type qualifier.  We happen to use `__restrict' as
 | 
			
		||||
// a way to define the `restrict' type qualifier without disturbing older
 | 
			
		||||
// software that is unaware of C99 keywords.
 | 
			
		||||
 | 
			
		||||
// GNU C version 2.96 adds explicit branch prediction so that
 | 
			
		||||
// the CPU back-end can hint the processor and also so that
 | 
			
		||||
// code blocks can be reordered such that the predicted path
 | 
			
		||||
// sees a more linear flow, thus improving cache behavior, etc.
 | 
			
		||||
//
 | 
			
		||||
// The following two macros provide us with a way to utilize this
 | 
			
		||||
// compiler feature.  Use __predict_true() if you expect the expression
 | 
			
		||||
// to evaluate to true, and __predict_false() if you expect the
 | 
			
		||||
// expression to evaluate to false.
 | 
			
		||||
//
 | 
			
		||||
// A few notes about usage:
 | 
			
		||||
//
 | 
			
		||||
//	* Generally, __predict_false() error condition checks (unless
 | 
			
		||||
//	  you have some _strong_ reason to do otherwise, in which case
 | 
			
		||||
//	  document it), and/or __predict_true() `no-error' condition
 | 
			
		||||
//	  checks, assuming you want to optimize for the no-error case.
 | 
			
		||||
//
 | 
			
		||||
//	* Other than that, if you don't know the likelihood of a test
 | 
			
		||||
//	  succeeding from empirical or other `hard' evidence, don't
 | 
			
		||||
//	  make predictions.
 | 
			
		||||
//
 | 
			
		||||
//	* These are meant to be used in places that are run `a lot'.
 | 
			
		||||
//	  It is wasteful to make predictions in code that is run
 | 
			
		||||
//	  seldomly (e.g. at subsystem initialization time) as the
 | 
			
		||||
//	  basic block reordering that this affects can often generate
 | 
			
		||||
//	  larger code.
 | 
			
		||||
 | 
			
		||||
// We define this here since <stddef.h>, <sys/queue.h>, and <sys/types.h>
 | 
			
		||||
// require it.
 | 
			
		||||
 | 
			
		||||
// Given the pointer x to the member m of the struct s, return
 | 
			
		||||
// a pointer to the containing structure.  When using GCC, we first
 | 
			
		||||
// assign pointer x to a local variable, to check that its type is
 | 
			
		||||
// compatible with member m.
 | 
			
		||||
 | 
			
		||||
// Compiler-dependent macros to declare that functions take printf-like
 | 
			
		||||
// or scanf-like arguments.  They are null except for versions of gcc
 | 
			
		||||
// that are known to support the features properly (old versions of gcc-2
 | 
			
		||||
// didn't permit keeping the keywords out of the application namespace).
 | 
			
		||||
 | 
			
		||||
// Compiler-dependent macros that rely on FreeBSD-specific extensions.
 | 
			
		||||
 | 
			
		||||
// Embed the rcs id of a source file in the resulting library.  Note that in
 | 
			
		||||
// more recent ELF binutils, we use .ident allowing the ID to be stripped.
 | 
			
		||||
// Usage:
 | 
			
		||||
//	__FBSDID("$FreeBSD$");
 | 
			
		||||
 | 
			
		||||
// -
 | 
			
		||||
// The following definitions are an extension of the behavior originally
 | 
			
		||||
// implemented in <sys/_posix.h>, but with a different level of granularity.
 | 
			
		||||
// POSIX.1 requires that the macros we test be defined before any standard
 | 
			
		||||
// header file is included.
 | 
			
		||||
//
 | 
			
		||||
// Here's a quick run-down of the versions:
 | 
			
		||||
//  defined(_POSIX_SOURCE)		1003.1-1988
 | 
			
		||||
//  _POSIX_C_SOURCE == 1		1003.1-1990
 | 
			
		||||
//  _POSIX_C_SOURCE == 2		1003.2-1992 C Language Binding Option
 | 
			
		||||
//  _POSIX_C_SOURCE == 199309		1003.1b-1993
 | 
			
		||||
//  _POSIX_C_SOURCE == 199506		1003.1c-1995, 1003.1i-1995,
 | 
			
		||||
//					and the omnibus ISO/IEC 9945-1: 1996
 | 
			
		||||
//  _POSIX_C_SOURCE == 200112		1003.1-2001
 | 
			
		||||
//  _POSIX_C_SOURCE == 200809		1003.1-2008
 | 
			
		||||
//
 | 
			
		||||
// In addition, the X/Open Portability Guide, which is now the Single UNIX
 | 
			
		||||
// Specification, defines a feature-test macro which indicates the version of
 | 
			
		||||
// that specification, and which subsumes _POSIX_C_SOURCE.
 | 
			
		||||
//
 | 
			
		||||
// Our macros begin with two underscores to avoid namespace screwage.
 | 
			
		||||
 | 
			
		||||
// Deal with IEEE Std. 1003.1-1990, in which _POSIX_C_SOURCE == 1.
 | 
			
		||||
 | 
			
		||||
// Deal with IEEE Std. 1003.2-1992, in which _POSIX_C_SOURCE == 2.
 | 
			
		||||
 | 
			
		||||
// Deal with various X/Open Portability Guides and Single UNIX Spec.
 | 
			
		||||
 | 
			
		||||
// Deal with all versions of POSIX.  The ordering relative to the tests above is
 | 
			
		||||
// important.
 | 
			
		||||
// -
 | 
			
		||||
// Deal with _ANSI_SOURCE:
 | 
			
		||||
// If it is defined, and no other compilation environment is explicitly
 | 
			
		||||
// requested, then define our internal feature-test macros to zero.  This
 | 
			
		||||
// makes no difference to the preprocessor (undefined symbols in preprocessing
 | 
			
		||||
// expressions are defined to have value zero), but makes it more convenient for
 | 
			
		||||
// a test program to print out the values.
 | 
			
		||||
//
 | 
			
		||||
// If a program mistakenly defines _ANSI_SOURCE and some other macro such as
 | 
			
		||||
// _POSIX_C_SOURCE, we will assume that it wants the broader compilation
 | 
			
		||||
// environment (and in fact we will never get here).
 | 
			
		||||
 | 
			
		||||
// User override __EXT1_VISIBLE
 | 
			
		||||
 | 
			
		||||
// Old versions of GCC use non-standard ARM arch symbols; acle-compat.h
 | 
			
		||||
// translates them to __ARM_ARCH and the modern feature symbols defined by ARM.
 | 
			
		||||
 | 
			
		||||
// Nullability qualifiers: currently only supported by Clang.
 | 
			
		||||
 | 
			
		||||
// Type Safety Checking
 | 
			
		||||
//
 | 
			
		||||
// Clang provides additional attributes to enable checking type safety
 | 
			
		||||
// properties that cannot be enforced by the C type system.
 | 
			
		||||
 | 
			
		||||
// Lock annotations.
 | 
			
		||||
//
 | 
			
		||||
// Clang provides support for doing basic thread-safety tests at
 | 
			
		||||
// compile-time, by marking which locks will/should be held when
 | 
			
		||||
// entering/leaving a functions.
 | 
			
		||||
//
 | 
			
		||||
// Furthermore, it is also possible to annotate variables and structure
 | 
			
		||||
// members to enforce that they are only accessed when certain locks are
 | 
			
		||||
// held.
 | 
			
		||||
 | 
			
		||||
// Structure implements a lock.
 | 
			
		||||
 | 
			
		||||
// Function acquires an exclusive or shared lock.
 | 
			
		||||
 | 
			
		||||
// Function attempts to acquire an exclusive or shared lock.
 | 
			
		||||
 | 
			
		||||
// Function releases a lock.
 | 
			
		||||
 | 
			
		||||
// Function asserts that an exclusive or shared lock is held.
 | 
			
		||||
 | 
			
		||||
// Function requires that an exclusive or shared lock is or is not held.
 | 
			
		||||
 | 
			
		||||
// Function should not be analyzed.
 | 
			
		||||
 | 
			
		||||
// Function or variable should not be sanitized, i.e. by AddressSanitizer.
 | 
			
		||||
// GCC has the nosanitize attribute, but as a function attribute only, and
 | 
			
		||||
// warns on use as a variable attribute.
 | 
			
		||||
 | 
			
		||||
// Guard variables and structure members by lock.
 | 
			
		||||
 | 
			
		||||
// -
 | 
			
		||||
// SPDX-License-Identifier: BSD-2-Clause-FreeBSD
 | 
			
		||||
//
 | 
			
		||||
// Copyright (c) 2003 Marcel Moolenaar
 | 
			
		||||
// All rights reserved.
 | 
			
		||||
//
 | 
			
		||||
// Redistribution and use in source and binary forms, with or without
 | 
			
		||||
// modification, are permitted provided that the following conditions
 | 
			
		||||
// are met:
 | 
			
		||||
//
 | 
			
		||||
// 1. Redistributions of source code must retain the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer.
 | 
			
		||||
// 2. Redistributions in binary form must reproduce the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer in the
 | 
			
		||||
//    documentation and/or other materials provided with the distribution.
 | 
			
		||||
//
 | 
			
		||||
// THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
 | 
			
		||||
// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
 | 
			
		||||
// OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
 | 
			
		||||
// IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
 | 
			
		||||
// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
 | 
			
		||||
// NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
 | 
			
		||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
 | 
			
		||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 | 
			
		||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 | 
			
		||||
// THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 | 
			
		||||
//
 | 
			
		||||
// $FreeBSD$
 | 
			
		||||
 | 
			
		||||
// -
 | 
			
		||||
// SPDX-License-Identifier: BSD-2-Clause-FreeBSD
 | 
			
		||||
//
 | 
			
		||||
// Copyright (c) 2002 Mike Barcroft <mike@FreeBSD.org>
 | 
			
		||||
// All rights reserved.
 | 
			
		||||
//
 | 
			
		||||
// Redistribution and use in source and binary forms, with or without
 | 
			
		||||
// modification, are permitted provided that the following conditions
 | 
			
		||||
// are met:
 | 
			
		||||
// 1. Redistributions of source code must retain the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer.
 | 
			
		||||
// 2. Redistributions in binary form must reproduce the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer in the
 | 
			
		||||
//    documentation and/or other materials provided with the distribution.
 | 
			
		||||
//
 | 
			
		||||
// THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
 | 
			
		||||
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 | 
			
		||||
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 | 
			
		||||
// ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
 | 
			
		||||
// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 | 
			
		||||
// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 | 
			
		||||
// OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 | 
			
		||||
// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 | 
			
		||||
// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 | 
			
		||||
// OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 | 
			
		||||
// SUCH DAMAGE.
 | 
			
		||||
//
 | 
			
		||||
// $FreeBSD$
 | 
			
		||||
 | 
			
		||||
// -
 | 
			
		||||
// SPDX-License-Identifier: BSD-3-Clause
 | 
			
		||||
//
 | 
			
		||||
// Copyright (c) 1991, 1993
 | 
			
		||||
//	The Regents of the University of California.  All rights reserved.
 | 
			
		||||
//
 | 
			
		||||
// This code is derived from software contributed to Berkeley by
 | 
			
		||||
// Berkeley Software Design, Inc.
 | 
			
		||||
//
 | 
			
		||||
// Redistribution and use in source and binary forms, with or without
 | 
			
		||||
// modification, are permitted provided that the following conditions
 | 
			
		||||
// are met:
 | 
			
		||||
// 1. Redistributions of source code must retain the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer.
 | 
			
		||||
// 2. Redistributions in binary form must reproduce the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer in the
 | 
			
		||||
//    documentation and/or other materials provided with the distribution.
 | 
			
		||||
// 3. Neither the name of the University nor the names of its contributors
 | 
			
		||||
//    may be used to endorse or promote products derived from this software
 | 
			
		||||
//    without specific prior written permission.
 | 
			
		||||
//
 | 
			
		||||
// THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 | 
			
		||||
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 | 
			
		||||
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 | 
			
		||||
// ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 | 
			
		||||
// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 | 
			
		||||
// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 | 
			
		||||
// OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 | 
			
		||||
// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 | 
			
		||||
// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 | 
			
		||||
// OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 | 
			
		||||
// SUCH DAMAGE.
 | 
			
		||||
//
 | 
			
		||||
//	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
 | 
			
		||||
// $FreeBSD$
 | 
			
		||||
 | 
			
		||||
// -
 | 
			
		||||
// This file is in the public domain.
 | 
			
		||||
// $FreeBSD$
 | 
			
		||||
 | 
			
		||||
// -
 | 
			
		||||
// SPDX-License-Identifier: BSD-4-Clause
 | 
			
		||||
//
 | 
			
		||||
// Copyright (c) 2002 Mike Barcroft <mike@FreeBSD.org>
 | 
			
		||||
// Copyright (c) 1990, 1993
 | 
			
		||||
//	The Regents of the University of California.  All rights reserved.
 | 
			
		||||
//
 | 
			
		||||
// Redistribution and use in source and binary forms, with or without
 | 
			
		||||
// modification, are permitted provided that the following conditions
 | 
			
		||||
// are met:
 | 
			
		||||
// 1. Redistributions of source code must retain the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer.
 | 
			
		||||
// 2. Redistributions in binary form must reproduce the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer in the
 | 
			
		||||
//    documentation and/or other materials provided with the distribution.
 | 
			
		||||
// 3. All advertising materials mentioning features or use of this software
 | 
			
		||||
//    must display the following acknowledgement:
 | 
			
		||||
//	This product includes software developed by the University of
 | 
			
		||||
//	California, Berkeley and its contributors.
 | 
			
		||||
// 4. Neither the name of the University nor the names of its contributors
 | 
			
		||||
//    may be used to endorse or promote products derived from this software
 | 
			
		||||
//    without specific prior written permission.
 | 
			
		||||
//
 | 
			
		||||
// THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 | 
			
		||||
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 | 
			
		||||
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 | 
			
		||||
// ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 | 
			
		||||
// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 | 
			
		||||
// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 | 
			
		||||
// OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 | 
			
		||||
// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 | 
			
		||||
// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 | 
			
		||||
// OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 | 
			
		||||
// SUCH DAMAGE.
 | 
			
		||||
//
 | 
			
		||||
//	From: @(#)ansi.h	8.2 (Berkeley) 1/4/94
 | 
			
		||||
//	From: @(#)types.h	8.3 (Berkeley) 1/5/94
 | 
			
		||||
// $FreeBSD$
 | 
			
		||||
 | 
			
		||||
// -
 | 
			
		||||
// This file is in the public domain.
 | 
			
		||||
// $FreeBSD$
 | 
			
		||||
 | 
			
		||||
// -
 | 
			
		||||
// SPDX-License-Identifier: BSD-3-Clause
 | 
			
		||||
//
 | 
			
		||||
// Copyright (c) 1988, 1993
 | 
			
		||||
//	The Regents of the University of California.  All rights reserved.
 | 
			
		||||
//
 | 
			
		||||
// Redistribution and use in source and binary forms, with or without
 | 
			
		||||
// modification, are permitted provided that the following conditions
 | 
			
		||||
// are met:
 | 
			
		||||
// 1. Redistributions of source code must retain the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer.
 | 
			
		||||
// 2. Redistributions in binary form must reproduce the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer in the
 | 
			
		||||
//    documentation and/or other materials provided with the distribution.
 | 
			
		||||
// 3. Neither the name of the University nor the names of its contributors
 | 
			
		||||
//    may be used to endorse or promote products derived from this software
 | 
			
		||||
//    without specific prior written permission.
 | 
			
		||||
//
 | 
			
		||||
// THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 | 
			
		||||
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 | 
			
		||||
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 | 
			
		||||
// ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 | 
			
		||||
// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 | 
			
		||||
// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 | 
			
		||||
// OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 | 
			
		||||
// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 | 
			
		||||
// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 | 
			
		||||
// OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 | 
			
		||||
// SUCH DAMAGE.
 | 
			
		||||
//
 | 
			
		||||
//	@(#)limits.h	8.3 (Berkeley) 1/4/94
 | 
			
		||||
// $FreeBSD$
 | 
			
		||||
 | 
			
		||||
// According to ANSI (section 2.2.4.2), the values below must be usable by
 | 
			
		||||
// #if preprocessing directives.  Additionally, the expression must have the
 | 
			
		||||
// same type as would an expression that is an object of the corresponding
 | 
			
		||||
// type converted according to the integral promotions.  The subtraction for
 | 
			
		||||
// INT_MIN, etc., is so the value is not unsigned; e.g., 0x80000000 is an
 | 
			
		||||
// unsigned int for 32-bit two's complement ANSI compilers (section 3.1.3.2).
 | 
			
		||||
 | 
			
		||||
// max value for an unsigned long long
 | 
			
		||||
 | 
			
		||||
// Quads and longs are the same on the amd64.  Ensure they stay in sync.
 | 
			
		||||
 | 
			
		||||
// Minimum signal stack size.
 | 
			
		||||
 | 
			
		||||
// Basic types upon which most other types are built.
 | 
			
		||||
type X__int8_t = int8     /* _types.h:55:22 */
 | 
			
		||||
type X__uint8_t = uint8   /* _types.h:56:24 */
 | 
			
		||||
type X__int16_t = int16   /* _types.h:57:17 */
 | 
			
		||||
type X__uint16_t = uint16 /* _types.h:58:25 */
 | 
			
		||||
type X__int32_t = int32   /* _types.h:59:15 */
 | 
			
		||||
type X__uint32_t = uint32 /* _types.h:60:23 */
 | 
			
		||||
type X__int64_t = int64   /* _types.h:62:16 */
 | 
			
		||||
type X__uint64_t = uint64 /* _types.h:63:24 */
 | 
			
		||||
 | 
			
		||||
// Standard type definitions.
 | 
			
		||||
type X__clock_t = X__int32_t         /* _types.h:75:19 */ // clock()...
 | 
			
		||||
type X__critical_t = X__int64_t      /* _types.h:76:19 */
 | 
			
		||||
type X__double_t = float64           /* _types.h:78:17 */
 | 
			
		||||
type X__float_t = float32            /* _types.h:79:16 */
 | 
			
		||||
type X__intfptr_t = X__int64_t       /* _types.h:81:19 */
 | 
			
		||||
type X__intptr_t = X__int64_t        /* _types.h:82:19 */
 | 
			
		||||
type X__intmax_t = X__int64_t        /* _types.h:93:19 */
 | 
			
		||||
type X__int_fast8_t = X__int32_t     /* _types.h:94:19 */
 | 
			
		||||
type X__int_fast16_t = X__int32_t    /* _types.h:95:19 */
 | 
			
		||||
type X__int_fast32_t = X__int32_t    /* _types.h:96:19 */
 | 
			
		||||
type X__int_fast64_t = X__int64_t    /* _types.h:97:19 */
 | 
			
		||||
type X__int_least8_t = X__int8_t     /* _types.h:98:18 */
 | 
			
		||||
type X__int_least16_t = X__int16_t   /* _types.h:99:19 */
 | 
			
		||||
type X__int_least32_t = X__int32_t   /* _types.h:100:19 */
 | 
			
		||||
type X__int_least64_t = X__int64_t   /* _types.h:101:19 */
 | 
			
		||||
type X__ptrdiff_t = X__int64_t       /* _types.h:103:19 */ // ptr1 - ptr2
 | 
			
		||||
type X__register_t = X__int64_t      /* _types.h:104:19 */
 | 
			
		||||
type X__segsz_t = X__int64_t         /* _types.h:105:19 */ // segment size (in pages)
 | 
			
		||||
type X__size_t = X__uint64_t         /* _types.h:106:20 */ // sizeof()
 | 
			
		||||
type X__ssize_t = X__int64_t         /* _types.h:107:19 */ // byte count or error
 | 
			
		||||
type X__time_t = X__int64_t          /* _types.h:108:19 */ // time()...
 | 
			
		||||
type X__uintfptr_t = X__uint64_t     /* _types.h:109:20 */
 | 
			
		||||
type X__uintptr_t = X__uint64_t      /* _types.h:110:20 */
 | 
			
		||||
type X__uintmax_t = X__uint64_t      /* _types.h:121:20 */
 | 
			
		||||
type X__uint_fast8_t = X__uint32_t   /* _types.h:122:20 */
 | 
			
		||||
type X__uint_fast16_t = X__uint32_t  /* _types.h:123:20 */
 | 
			
		||||
type X__uint_fast32_t = X__uint32_t  /* _types.h:124:20 */
 | 
			
		||||
type X__uint_fast64_t = X__uint64_t  /* _types.h:125:20 */
 | 
			
		||||
type X__uint_least8_t = X__uint8_t   /* _types.h:126:19 */
 | 
			
		||||
type X__uint_least16_t = X__uint16_t /* _types.h:127:20 */
 | 
			
		||||
type X__uint_least32_t = X__uint32_t /* _types.h:128:20 */
 | 
			
		||||
type X__uint_least64_t = X__uint64_t /* _types.h:129:20 */
 | 
			
		||||
type X__u_register_t = X__uint64_t   /* _types.h:131:20 */
 | 
			
		||||
type X__vm_offset_t = X__uint64_t    /* _types.h:132:20 */
 | 
			
		||||
type X__vm_paddr_t = X__uint64_t     /* _types.h:133:20 */
 | 
			
		||||
type X__vm_size_t = X__uint64_t      /* _types.h:134:20 */
 | 
			
		||||
type X___wchar_t = int32             /* _types.h:141:14 */
 | 
			
		||||
 | 
			
		||||
// Standard type definitions.
 | 
			
		||||
type X__blksize_t = X__int32_t   /* _types.h:40:19 */ // file block size
 | 
			
		||||
type X__blkcnt_t = X__int64_t    /* _types.h:41:19 */ // file block count
 | 
			
		||||
type X__clockid_t = X__int32_t   /* _types.h:42:19 */ // clock_gettime()...
 | 
			
		||||
type X__fflags_t = X__uint32_t   /* _types.h:43:20 */ // file flags
 | 
			
		||||
type X__fsblkcnt_t = X__uint64_t /* _types.h:44:20 */
 | 
			
		||||
type X__fsfilcnt_t = X__uint64_t /* _types.h:45:20 */
 | 
			
		||||
type X__gid_t = X__uint32_t      /* _types.h:46:20 */
 | 
			
		||||
type X__id_t = X__int64_t        /* _types.h:47:19 */ // can hold a gid_t, pid_t, or uid_t
 | 
			
		||||
type X__ino_t = X__uint64_t      /* _types.h:48:20 */ // inode number
 | 
			
		||||
type X__key_t = int64            /* _types.h:49:15 */ // IPC key (for Sys V IPC)
 | 
			
		||||
type X__lwpid_t = X__int32_t     /* _types.h:50:19 */ // Thread ID (a.k.a. LWP)
 | 
			
		||||
type X__mode_t = X__uint16_t     /* _types.h:51:20 */ // permissions
 | 
			
		||||
type X__accmode_t = int32        /* _types.h:52:14 */ // access permissions
 | 
			
		||||
type X__nl_item = int32          /* _types.h:53:14 */
 | 
			
		||||
type X__nlink_t = X__uint64_t    /* _types.h:54:20 */ // link count
 | 
			
		||||
type X__off_t = X__int64_t       /* _types.h:55:19 */ // file offset
 | 
			
		||||
type X__off64_t = X__int64_t     /* _types.h:56:19 */ // file offset (alias)
 | 
			
		||||
type X__pid_t = X__int32_t       /* _types.h:57:19 */ // process [group]
 | 
			
		||||
type X__rlim_t = X__int64_t      /* _types.h:58:19 */ // resource limit - intentionally
 | 
			
		||||
// signed, because of legacy code
 | 
			
		||||
// that uses -1 for RLIM_INFINITY
 | 
			
		||||
type X__sa_family_t = X__uint8_t /* _types.h:61:19 */
 | 
			
		||||
type X__socklen_t = X__uint32_t  /* _types.h:62:20 */
 | 
			
		||||
type X__suseconds_t = int64      /* _types.h:63:15 */ // microseconds (signed)
 | 
			
		||||
type X__timer_t = uintptr        /* _types.h:64:24 */ // timer_gettime()...
 | 
			
		||||
type X__mqd_t = uintptr          /* _types.h:65:21 */ // mq_open()...
 | 
			
		||||
type X__uid_t = X__uint32_t      /* _types.h:66:20 */
 | 
			
		||||
type X__useconds_t = uint32      /* _types.h:67:22 */ // microseconds (unsigned)
 | 
			
		||||
type X__cpuwhich_t = int32       /* _types.h:68:14 */ // which parameter for cpuset.
 | 
			
		||||
type X__cpulevel_t = int32       /* _types.h:69:14 */ // level parameter for cpuset.
 | 
			
		||||
type X__cpusetid_t = int32       /* _types.h:70:14 */ // cpuset identifier.
 | 
			
		||||
type X__daddr_t = X__int64_t     /* _types.h:71:19 */ // bwrite(3), FIOBMAP2, etc
 | 
			
		||||
 | 
			
		||||
// Unusual type definitions.
 | 
			
		||||
// rune_t is declared to be an ``int'' instead of the more natural
 | 
			
		||||
// ``unsigned long'' or ``long''.  Two things are happening here.  It is not
 | 
			
		||||
// unsigned so that EOF (-1) can be naturally assigned to it and used.  Also,
 | 
			
		||||
// it looks like 10646 will be a 31 bit standard.  This means that if your
 | 
			
		||||
// ints cannot hold 32 bits, you will be in trouble.  The reason an int was
 | 
			
		||||
// chosen over a long is that the is*() and to*() routines take ints (says
 | 
			
		||||
// ANSI C), but they use __ct_rune_t instead of int.
 | 
			
		||||
//
 | 
			
		||||
// NOTE: rune_t is not covered by ANSI nor other standards, and should not
 | 
			
		||||
// be instantiated outside of lib/libc/locale.  Use wchar_t.  wint_t and
 | 
			
		||||
// rune_t must be the same type.  Also, wint_t should be able to hold all
 | 
			
		||||
// members of the largest character set plus one extra value (WEOF), and
 | 
			
		||||
// must be at least 16 bits.
 | 
			
		||||
type X__ct_rune_t = int32     /* _types.h:91:14 */ // arg type for ctype funcs
 | 
			
		||||
type X__rune_t = X__ct_rune_t /* _types.h:92:21 */ // rune_t (see above)
 | 
			
		||||
type X__wint_t = X__ct_rune_t /* _types.h:93:21 */ // wint_t (see above)
 | 
			
		||||
 | 
			
		||||
// Clang already provides these types as built-ins, but only in C++ mode.
 | 
			
		||||
type X__char16_t = X__uint_least16_t /* _types.h:97:26 */
 | 
			
		||||
type X__char32_t = X__uint_least32_t /* _types.h:98:26 */
 | 
			
		||||
// In C++11, char16_t and char32_t are built-in types.
 | 
			
		||||
 | 
			
		||||
type X__max_align_t = struct {
 | 
			
		||||
	F__max_align1 int64
 | 
			
		||||
	F__max_align2 float64
 | 
			
		||||
} /* _types.h:111:3 */
 | 
			
		||||
 | 
			
		||||
type X__dev_t = X__uint64_t /* _types.h:113:20 */ // device number
 | 
			
		||||
 | 
			
		||||
type X__fixpt_t = X__uint32_t /* _types.h:115:20 */ // fixed point number
 | 
			
		||||
 | 
			
		||||
// mbstate_t is an opaque object to keep conversion state during multibyte
 | 
			
		||||
// stream conversions.
 | 
			
		||||
type X__mbstate_t = struct {
 | 
			
		||||
	F__ccgo_pad1 [0]uint64
 | 
			
		||||
	F__mbstate8  [128]int8
 | 
			
		||||
} /* _types.h:124:3 */
 | 
			
		||||
 | 
			
		||||
type X__rman_res_t = X__uintmax_t /* _types.h:126:25 */
 | 
			
		||||
 | 
			
		||||
// Types for varargs. These are all provided by builtin types these
 | 
			
		||||
// days, so centralize their definition.
 | 
			
		||||
type X__va_list = X__builtin_va_list /* _types.h:133:27 */ // internally known to gcc
 | 
			
		||||
type X__gnuc_va_list = X__va_list    /* _types.h:140:20 */ // compatibility w/GNU headers
 | 
			
		||||
 | 
			
		||||
// When the following macro is defined, the system uses 64-bit inode numbers.
 | 
			
		||||
// Programs can use this to avoid including <sys/param.h>, with its associated
 | 
			
		||||
// namespace pollution.
 | 
			
		||||
 | 
			
		||||
type Rune_t = X__rune_t /* stdlib.h:46:18 */
 | 
			
		||||
 | 
			
		||||
type Div_t = struct {
 | 
			
		||||
	Fquot int32
 | 
			
		||||
	Frem  int32
 | 
			
		||||
} /* stdlib.h:66:3 */
 | 
			
		||||
 | 
			
		||||
type Ldiv_t = struct {
 | 
			
		||||
	Fquot int64
 | 
			
		||||
	Frem  int64
 | 
			
		||||
} /* stdlib.h:71:3 */
 | 
			
		||||
 | 
			
		||||
// Functions added in C99 which we make conditionally available in the
 | 
			
		||||
// BSD^C89 namespace if the compiler supports `long long'.
 | 
			
		||||
// The #if test is more complicated than it ought to be because
 | 
			
		||||
// __BSD_VISIBLE implies __ISO_C_VISIBLE == 1999 *even if* `long long'
 | 
			
		||||
// is not supported in the compilation environment (which therefore means
 | 
			
		||||
// that it can't really be ISO C99).
 | 
			
		||||
//
 | 
			
		||||
// (The only other extension made by C99 in thie header is _Exit().)
 | 
			
		||||
// LONGLONG
 | 
			
		||||
type Lldiv_t = struct {
 | 
			
		||||
	Fquot int64
 | 
			
		||||
	Frem  int64
 | 
			
		||||
} /* stdlib.h:142:3 */ // getsubopt(3) external variable
 | 
			
		||||
 | 
			
		||||
type Rsize_t = Size_t /* stdlib.h:340:16 */
 | 
			
		||||
 | 
			
		||||
type Errno_t = int32 /* stdlib.h:345:13 */
 | 
			
		||||
 | 
			
		||||
// K.3.6
 | 
			
		||||
type Constraint_handler_t = uintptr /* stdlib.h:349:14 */
 | 
			
		||||
 | 
			
		||||
var _ int8 /* gen.c:2:13: */
 | 
			
		||||
							
								
								
									
										1513
									
								
								vendor/modernc.org/libc/stdlib/stdlib_linux_386.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1513
									
								
								vendor/modernc.org/libc/stdlib/stdlib_linux_386.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										1531
									
								
								vendor/modernc.org/libc/stdlib/stdlib_linux_amd64.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1531
									
								
								vendor/modernc.org/libc/stdlib/stdlib_linux_amd64.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										1573
									
								
								vendor/modernc.org/libc/stdlib/stdlib_linux_arm.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1573
									
								
								vendor/modernc.org/libc/stdlib/stdlib_linux_arm.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										1607
									
								
								vendor/modernc.org/libc/stdlib/stdlib_linux_arm64.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1607
									
								
								vendor/modernc.org/libc/stdlib/stdlib_linux_arm64.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										1532
									
								
								vendor/modernc.org/libc/stdlib/stdlib_linux_s390x.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1532
									
								
								vendor/modernc.org/libc/stdlib/stdlib_linux_s390x.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										1620
									
								
								vendor/modernc.org/libc/stdlib/stdlib_netbsd_amd64.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1620
									
								
								vendor/modernc.org/libc/stdlib/stdlib_netbsd_amd64.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										781
									
								
								vendor/modernc.org/libc/stdlib/stdlib_openbsd_amd64.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										781
									
								
								vendor/modernc.org/libc/stdlib/stdlib_openbsd_amd64.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,781 @@
 | 
			
		||||
// Code generated by 'ccgo stdlib/gen.c -crt-import-path "" -export-defines "" -export-enums "" -export-externs X -export-fields F -export-structs "" -export-typedefs "" -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o stdlib/stdlib_openbsd_amd64.go -pkgname stdlib', DO NOT EDIT.
 | 
			
		||||
 | 
			
		||||
package stdlib
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"math"
 | 
			
		||||
	"reflect"
 | 
			
		||||
	"sync/atomic"
 | 
			
		||||
	"unsafe"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
var _ = math.Pi
 | 
			
		||||
var _ reflect.Kind
 | 
			
		||||
var _ atomic.Value
 | 
			
		||||
var _ unsafe.Pointer
 | 
			
		||||
 | 
			
		||||
const (
 | 
			
		||||
	BIG_ENDIAN           = 4321
 | 
			
		||||
	BYTE_ORDER           = 1234
 | 
			
		||||
	EXIT_FAILURE         = 1
 | 
			
		||||
	EXIT_SUCCESS         = 0
 | 
			
		||||
	LITTLE_ENDIAN        = 1234
 | 
			
		||||
	PDP_ENDIAN           = 3412
 | 
			
		||||
	RAND_MAX             = 0x7fffffff
 | 
			
		||||
	X_BIG_ENDIAN         = 4321
 | 
			
		||||
	X_BYTE_ORDER         = 1234
 | 
			
		||||
	X_CLOCKID_T_DEFINED_ = 0
 | 
			
		||||
	X_CLOCK_T_DEFINED_   = 0
 | 
			
		||||
	X_FILE_OFFSET_BITS   = 64
 | 
			
		||||
	X_INT16_T_DEFINED_   = 0
 | 
			
		||||
	X_INT32_T_DEFINED_   = 0
 | 
			
		||||
	X_INT64_T_DEFINED_   = 0
 | 
			
		||||
	X_INT8_T_DEFINED_    = 0
 | 
			
		||||
	X_LITTLE_ENDIAN      = 1234
 | 
			
		||||
	X_LP64               = 1
 | 
			
		||||
	X_MACHINE_CDEFS_H_   = 0
 | 
			
		||||
	X_MACHINE_ENDIAN_H_  = 0
 | 
			
		||||
	X_MACHINE__TYPES_H_  = 0
 | 
			
		||||
	X_MAX_PAGE_SHIFT     = 12
 | 
			
		||||
	X_OFF_T_DEFINED_     = 0
 | 
			
		||||
	X_PDP_ENDIAN         = 3412
 | 
			
		||||
	X_PID_T_DEFINED_     = 0
 | 
			
		||||
	X_QUAD_HIGHWORD      = 1
 | 
			
		||||
	X_QUAD_LOWWORD       = 0
 | 
			
		||||
	X_RET_PROTECTOR      = 1
 | 
			
		||||
	X_SIZE_T_DEFINED_    = 0
 | 
			
		||||
	X_SSIZE_T_DEFINED_   = 0
 | 
			
		||||
	X_STACKALIGNBYTES    = 15
 | 
			
		||||
	X_STDLIB_H_          = 0
 | 
			
		||||
	X_SYS_CDEFS_H_       = 0
 | 
			
		||||
	X_SYS_ENDIAN_H_      = 0
 | 
			
		||||
	X_SYS_TYPES_H_       = 0
 | 
			
		||||
	X_SYS__ENDIAN_H_     = 0
 | 
			
		||||
	X_SYS__TYPES_H_      = 0
 | 
			
		||||
	X_TIMER_T_DEFINED_   = 0
 | 
			
		||||
	X_TIME_T_DEFINED_    = 0
 | 
			
		||||
	X_UINT16_T_DEFINED_  = 0
 | 
			
		||||
	X_UINT32_T_DEFINED_  = 0
 | 
			
		||||
	X_UINT64_T_DEFINED_  = 0
 | 
			
		||||
	X_UINT8_T_DEFINED_   = 0
 | 
			
		||||
	X_WCHAR_T_DEFINED_   = 0
 | 
			
		||||
	Unix                 = 1
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
type Ptrdiff_t = int64 /* <builtin>:3:26 */
 | 
			
		||||
 | 
			
		||||
type Size_t = uint64 /* <builtin>:9:23 */
 | 
			
		||||
 | 
			
		||||
type Wchar_t = int32 /* <builtin>:15:24 */
 | 
			
		||||
 | 
			
		||||
type X__int128_t = struct {
 | 
			
		||||
	Flo int64
 | 
			
		||||
	Fhi int64
 | 
			
		||||
} /* <builtin>:21:43 */ // must match modernc.org/mathutil.Int128
 | 
			
		||||
type X__uint128_t = struct {
 | 
			
		||||
	Flo uint64
 | 
			
		||||
	Fhi uint64
 | 
			
		||||
} /* <builtin>:22:44 */ // must match modernc.org/mathutil.Int128
 | 
			
		||||
 | 
			
		||||
type X__builtin_va_list = uintptr /* <builtin>:46:14 */
 | 
			
		||||
type X__float128 = float64        /* <builtin>:47:21 */
 | 
			
		||||
 | 
			
		||||
//	$OpenBSD: stdlib.h,v 1.76 2019/05/10 15:03:24 otto Exp $
 | 
			
		||||
//	$NetBSD: stdlib.h,v 1.25 1995/12/27 21:19:08 jtc Exp $
 | 
			
		||||
 | 
			
		||||
// -
 | 
			
		||||
// Copyright (c) 1990 The Regents of the University of California.
 | 
			
		||||
// All rights reserved.
 | 
			
		||||
//
 | 
			
		||||
// Redistribution and use in source and binary forms, with or without
 | 
			
		||||
// modification, are permitted provided that the following conditions
 | 
			
		||||
// are met:
 | 
			
		||||
// 1. Redistributions of source code must retain the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer.
 | 
			
		||||
// 2. Redistributions in binary form must reproduce the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer in the
 | 
			
		||||
//    documentation and/or other materials provided with the distribution.
 | 
			
		||||
// 3. Neither the name of the University nor the names of its contributors
 | 
			
		||||
//    may be used to endorse or promote products derived from this software
 | 
			
		||||
//    without specific prior written permission.
 | 
			
		||||
//
 | 
			
		||||
// THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 | 
			
		||||
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 | 
			
		||||
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 | 
			
		||||
// ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 | 
			
		||||
// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 | 
			
		||||
// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 | 
			
		||||
// OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 | 
			
		||||
// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 | 
			
		||||
// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 | 
			
		||||
// OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 | 
			
		||||
// SUCH DAMAGE.
 | 
			
		||||
//
 | 
			
		||||
//	@(#)stdlib.h	5.13 (Berkeley) 6/4/91
 | 
			
		||||
 | 
			
		||||
//	$OpenBSD: cdefs.h,v 1.43 2018/10/29 17:10:40 guenther Exp $
 | 
			
		||||
//	$NetBSD: cdefs.h,v 1.16 1996/04/03 20:46:39 christos Exp $
 | 
			
		||||
 | 
			
		||||
// Copyright (c) 1991, 1993
 | 
			
		||||
//	The Regents of the University of California.  All rights reserved.
 | 
			
		||||
//
 | 
			
		||||
// This code is derived from software contributed to Berkeley by
 | 
			
		||||
// Berkeley Software Design, Inc.
 | 
			
		||||
//
 | 
			
		||||
// Redistribution and use in source and binary forms, with or without
 | 
			
		||||
// modification, are permitted provided that the following conditions
 | 
			
		||||
// are met:
 | 
			
		||||
// 1. Redistributions of source code must retain the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer.
 | 
			
		||||
// 2. Redistributions in binary form must reproduce the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer in the
 | 
			
		||||
//    documentation and/or other materials provided with the distribution.
 | 
			
		||||
// 3. Neither the name of the University nor the names of its contributors
 | 
			
		||||
//    may be used to endorse or promote products derived from this software
 | 
			
		||||
//    without specific prior written permission.
 | 
			
		||||
//
 | 
			
		||||
// THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 | 
			
		||||
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 | 
			
		||||
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 | 
			
		||||
// ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 | 
			
		||||
// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 | 
			
		||||
// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 | 
			
		||||
// OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 | 
			
		||||
// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 | 
			
		||||
// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 | 
			
		||||
// OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 | 
			
		||||
// SUCH DAMAGE.
 | 
			
		||||
//
 | 
			
		||||
//	@(#)cdefs.h	8.7 (Berkeley) 1/21/94
 | 
			
		||||
 | 
			
		||||
//	$OpenBSD: cdefs.h,v 1.3 2013/03/28 17:30:45 martynas Exp $
 | 
			
		||||
 | 
			
		||||
// Written by J.T. Conklin <jtc@wimsey.com> 01/17/95.
 | 
			
		||||
// Public domain.
 | 
			
		||||
 | 
			
		||||
// Macro to test if we're using a specific version of gcc or later.
 | 
			
		||||
 | 
			
		||||
// The __CONCAT macro is used to concatenate parts of symbol names, e.g.
 | 
			
		||||
// with "#define OLD(foo) __CONCAT(old,foo)", OLD(foo) produces oldfoo.
 | 
			
		||||
// The __CONCAT macro is a bit tricky -- make sure you don't put spaces
 | 
			
		||||
// in between its arguments.  Do not use __CONCAT on double-quoted strings,
 | 
			
		||||
// such as those from the __STRING macro: to concatenate strings just put
 | 
			
		||||
// them next to each other.
 | 
			
		||||
 | 
			
		||||
// GCC1 and some versions of GCC2 declare dead (non-returning) and
 | 
			
		||||
// pure (no side effects) functions using "volatile" and "const";
 | 
			
		||||
// unfortunately, these then cause warnings under "-ansi -pedantic".
 | 
			
		||||
// GCC >= 2.5 uses the __attribute__((attrs)) style.  All of these
 | 
			
		||||
// work for GNU C++ (modulo a slight glitch in the C++ grammar in
 | 
			
		||||
// the distribution version of 2.5.5).
 | 
			
		||||
 | 
			
		||||
// __returns_twice makes the compiler not assume the function
 | 
			
		||||
// only returns once.  This affects registerisation of variables:
 | 
			
		||||
// even local variables need to be in memory across such a call.
 | 
			
		||||
// Example: setjmp()
 | 
			
		||||
 | 
			
		||||
// __only_inline makes the compiler only use this function definition
 | 
			
		||||
// for inlining; references that can't be inlined will be left as
 | 
			
		||||
// external references instead of generating a local copy.  The
 | 
			
		||||
// matching library should include a simple extern definition for
 | 
			
		||||
// the function to handle those references.  c.f. ctype.h
 | 
			
		||||
 | 
			
		||||
// GNU C version 2.96 adds explicit branch prediction so that
 | 
			
		||||
// the CPU back-end can hint the processor and also so that
 | 
			
		||||
// code blocks can be reordered such that the predicted path
 | 
			
		||||
// sees a more linear flow, thus improving cache behavior, etc.
 | 
			
		||||
//
 | 
			
		||||
// The following two macros provide us with a way to utilize this
 | 
			
		||||
// compiler feature.  Use __predict_true() if you expect the expression
 | 
			
		||||
// to evaluate to true, and __predict_false() if you expect the
 | 
			
		||||
// expression to evaluate to false.
 | 
			
		||||
//
 | 
			
		||||
// A few notes about usage:
 | 
			
		||||
//
 | 
			
		||||
//	* Generally, __predict_false() error condition checks (unless
 | 
			
		||||
//	  you have some _strong_ reason to do otherwise, in which case
 | 
			
		||||
//	  document it), and/or __predict_true() `no-error' condition
 | 
			
		||||
//	  checks, assuming you want to optimize for the no-error case.
 | 
			
		||||
//
 | 
			
		||||
//	* Other than that, if you don't know the likelihood of a test
 | 
			
		||||
//	  succeeding from empirical or other `hard' evidence, don't
 | 
			
		||||
//	  make predictions.
 | 
			
		||||
//
 | 
			
		||||
//	* These are meant to be used in places that are run `a lot'.
 | 
			
		||||
//	  It is wasteful to make predictions in code that is run
 | 
			
		||||
//	  seldomly (e.g. at subsystem initialization time) as the
 | 
			
		||||
//	  basic block reordering that this affects can often generate
 | 
			
		||||
//	  larger code.
 | 
			
		||||
 | 
			
		||||
// Delete pseudo-keywords wherever they are not available or needed.
 | 
			
		||||
 | 
			
		||||
// The __packed macro indicates that a variable or structure members
 | 
			
		||||
// should have the smallest possible alignment, despite any host CPU
 | 
			
		||||
// alignment requirements.
 | 
			
		||||
//
 | 
			
		||||
// The __aligned(x) macro specifies the minimum alignment of a
 | 
			
		||||
// variable or structure.
 | 
			
		||||
//
 | 
			
		||||
// These macros together are useful for describing the layout and
 | 
			
		||||
// alignment of messages exchanged with hardware or other systems.
 | 
			
		||||
 | 
			
		||||
// "The nice thing about standards is that there are so many to choose from."
 | 
			
		||||
// There are a number of "feature test macros" specified by (different)
 | 
			
		||||
// standards that determine which interfaces and types the header files
 | 
			
		||||
// should expose.
 | 
			
		||||
//
 | 
			
		||||
// Because of inconsistencies in these macros, we define our own
 | 
			
		||||
// set in the private name space that end in _VISIBLE.  These are
 | 
			
		||||
// always defined and so headers can test their values easily.
 | 
			
		||||
// Things can get tricky when multiple feature macros are defined.
 | 
			
		||||
// We try to take the union of all the features requested.
 | 
			
		||||
//
 | 
			
		||||
// The following macros are guaranteed to have a value after cdefs.h
 | 
			
		||||
// has been included:
 | 
			
		||||
//	__POSIX_VISIBLE
 | 
			
		||||
//	__XPG_VISIBLE
 | 
			
		||||
//	__ISO_C_VISIBLE
 | 
			
		||||
//	__BSD_VISIBLE
 | 
			
		||||
 | 
			
		||||
// X/Open Portability Guides and Single Unix Specifications.
 | 
			
		||||
// _XOPEN_SOURCE				XPG3
 | 
			
		||||
// _XOPEN_SOURCE && _XOPEN_VERSION = 4		XPG4
 | 
			
		||||
// _XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED = 1	XPG4v2
 | 
			
		||||
// _XOPEN_SOURCE == 500				XPG5
 | 
			
		||||
// _XOPEN_SOURCE == 520				XPG5v2
 | 
			
		||||
// _XOPEN_SOURCE == 600				POSIX 1003.1-2001 with XSI
 | 
			
		||||
// _XOPEN_SOURCE == 700				POSIX 1003.1-2008 with XSI
 | 
			
		||||
//
 | 
			
		||||
// The XPG spec implies a specific value for _POSIX_C_SOURCE.
 | 
			
		||||
 | 
			
		||||
// POSIX macros, these checks must follow the XOPEN ones above.
 | 
			
		||||
//
 | 
			
		||||
// _POSIX_SOURCE == 1		1003.1-1988 (superseded by _POSIX_C_SOURCE)
 | 
			
		||||
// _POSIX_C_SOURCE == 1		1003.1-1990
 | 
			
		||||
// _POSIX_C_SOURCE == 2		1003.2-1992
 | 
			
		||||
// _POSIX_C_SOURCE == 199309L	1003.1b-1993
 | 
			
		||||
// _POSIX_C_SOURCE == 199506L   1003.1c-1995, 1003.1i-1995,
 | 
			
		||||
//				and the omnibus ISO/IEC 9945-1:1996
 | 
			
		||||
// _POSIX_C_SOURCE == 200112L   1003.1-2001
 | 
			
		||||
// _POSIX_C_SOURCE == 200809L   1003.1-2008
 | 
			
		||||
//
 | 
			
		||||
// The POSIX spec implies a specific value for __ISO_C_VISIBLE, though
 | 
			
		||||
// this may be overridden by the _ISOC99_SOURCE macro later.
 | 
			
		||||
 | 
			
		||||
// _ANSI_SOURCE means to expose ANSI C89 interfaces only.
 | 
			
		||||
// If the user defines it in addition to one of the POSIX or XOPEN
 | 
			
		||||
// macros, assume the POSIX/XOPEN macro(s) should take precedence.
 | 
			
		||||
 | 
			
		||||
// _ISOC99_SOURCE, _ISOC11_SOURCE, __STDC_VERSION__, and __cplusplus
 | 
			
		||||
// override any of the other macros since they are non-exclusive.
 | 
			
		||||
 | 
			
		||||
// Finally deal with BSD-specific interfaces that are not covered
 | 
			
		||||
// by any standards.  We expose these when none of the POSIX or XPG
 | 
			
		||||
// macros is defined or if the user explicitly asks for them.
 | 
			
		||||
 | 
			
		||||
// Default values.
 | 
			
		||||
 | 
			
		||||
//	$OpenBSD: _null.h,v 1.2 2016/09/09 22:07:58 millert Exp $
 | 
			
		||||
 | 
			
		||||
// Written by Todd C. Miller, September 9, 2016
 | 
			
		||||
// Public domain.
 | 
			
		||||
 | 
			
		||||
//	$OpenBSD: _types.h,v 1.17 2018/03/05 01:15:25 deraadt Exp $
 | 
			
		||||
 | 
			
		||||
// -
 | 
			
		||||
// Copyright (c) 1990, 1993
 | 
			
		||||
//	The Regents of the University of California.  All rights reserved.
 | 
			
		||||
//
 | 
			
		||||
// Redistribution and use in source and binary forms, with or without
 | 
			
		||||
// modification, are permitted provided that the following conditions
 | 
			
		||||
// are met:
 | 
			
		||||
// 1. Redistributions of source code must retain the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer.
 | 
			
		||||
// 2. Redistributions in binary form must reproduce the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer in the
 | 
			
		||||
//    documentation and/or other materials provided with the distribution.
 | 
			
		||||
// 3. Neither the name of the University nor the names of its contributors
 | 
			
		||||
//    may be used to endorse or promote products derived from this software
 | 
			
		||||
//    without specific prior written permission.
 | 
			
		||||
//
 | 
			
		||||
// THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 | 
			
		||||
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 | 
			
		||||
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 | 
			
		||||
// ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 | 
			
		||||
// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 | 
			
		||||
// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 | 
			
		||||
// OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 | 
			
		||||
// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 | 
			
		||||
// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 | 
			
		||||
// OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 | 
			
		||||
// SUCH DAMAGE.
 | 
			
		||||
//
 | 
			
		||||
//	@(#)types.h	8.3 (Berkeley) 1/5/94
 | 
			
		||||
//	@(#)ansi.h	8.2 (Berkeley) 1/4/94
 | 
			
		||||
 | 
			
		||||
// _ALIGN(p) rounds p (pointer or byte index) up to a correctly-aligned
 | 
			
		||||
// value for all data types (int, long, ...).   The result is an
 | 
			
		||||
// unsigned long and must be cast to any desired pointer type.
 | 
			
		||||
//
 | 
			
		||||
// _ALIGNED_POINTER is a boolean macro that checks whether an address
 | 
			
		||||
// is valid to fetch data elements of type t from on this architecture.
 | 
			
		||||
// This does not reflect the optimal alignment, just the possibility
 | 
			
		||||
// (within reasonable limits).
 | 
			
		||||
 | 
			
		||||
// 7.18.1.1 Exact-width integer types
 | 
			
		||||
type X__int8_t = int8     /* _types.h:61:22 */
 | 
			
		||||
type X__uint8_t = uint8   /* _types.h:62:24 */
 | 
			
		||||
type X__int16_t = int16   /* _types.h:63:17 */
 | 
			
		||||
type X__uint16_t = uint16 /* _types.h:64:25 */
 | 
			
		||||
type X__int32_t = int32   /* _types.h:65:15 */
 | 
			
		||||
type X__uint32_t = uint32 /* _types.h:66:23 */
 | 
			
		||||
type X__int64_t = int64   /* _types.h:67:20 */
 | 
			
		||||
type X__uint64_t = uint64 /* _types.h:68:28 */
 | 
			
		||||
 | 
			
		||||
// 7.18.1.2 Minimum-width integer types
 | 
			
		||||
type X__int_least8_t = X__int8_t     /* _types.h:71:19 */
 | 
			
		||||
type X__uint_least8_t = X__uint8_t   /* _types.h:72:20 */
 | 
			
		||||
type X__int_least16_t = X__int16_t   /* _types.h:73:20 */
 | 
			
		||||
type X__uint_least16_t = X__uint16_t /* _types.h:74:21 */
 | 
			
		||||
type X__int_least32_t = X__int32_t   /* _types.h:75:20 */
 | 
			
		||||
type X__uint_least32_t = X__uint32_t /* _types.h:76:21 */
 | 
			
		||||
type X__int_least64_t = X__int64_t   /* _types.h:77:20 */
 | 
			
		||||
type X__uint_least64_t = X__uint64_t /* _types.h:78:21 */
 | 
			
		||||
 | 
			
		||||
// 7.18.1.3 Fastest minimum-width integer types
 | 
			
		||||
type X__int_fast8_t = X__int32_t    /* _types.h:81:20 */
 | 
			
		||||
type X__uint_fast8_t = X__uint32_t  /* _types.h:82:21 */
 | 
			
		||||
type X__int_fast16_t = X__int32_t   /* _types.h:83:20 */
 | 
			
		||||
type X__uint_fast16_t = X__uint32_t /* _types.h:84:21 */
 | 
			
		||||
type X__int_fast32_t = X__int32_t   /* _types.h:85:20 */
 | 
			
		||||
type X__uint_fast32_t = X__uint32_t /* _types.h:86:21 */
 | 
			
		||||
type X__int_fast64_t = X__int64_t   /* _types.h:87:20 */
 | 
			
		||||
type X__uint_fast64_t = X__uint64_t /* _types.h:88:21 */
 | 
			
		||||
 | 
			
		||||
// 7.18.1.4 Integer types capable of holding object pointers
 | 
			
		||||
type X__intptr_t = int64   /* _types.h:103:16 */
 | 
			
		||||
type X__uintptr_t = uint64 /* _types.h:104:24 */
 | 
			
		||||
 | 
			
		||||
// 7.18.1.5 Greatest-width integer types
 | 
			
		||||
type X__intmax_t = X__int64_t   /* _types.h:107:20 */
 | 
			
		||||
type X__uintmax_t = X__uint64_t /* _types.h:108:21 */
 | 
			
		||||
 | 
			
		||||
// Register size
 | 
			
		||||
type X__register_t = int64 /* _types.h:111:16 */
 | 
			
		||||
 | 
			
		||||
// VM system types
 | 
			
		||||
type X__vaddr_t = uint64 /* _types.h:114:24 */
 | 
			
		||||
type X__paddr_t = uint64 /* _types.h:115:24 */
 | 
			
		||||
type X__vsize_t = uint64 /* _types.h:116:24 */
 | 
			
		||||
type X__psize_t = uint64 /* _types.h:117:24 */
 | 
			
		||||
 | 
			
		||||
// Standard system types
 | 
			
		||||
type X__double_t = float64           /* _types.h:120:18 */
 | 
			
		||||
type X__float_t = float32            /* _types.h:121:17 */
 | 
			
		||||
type X__ptrdiff_t = int64            /* _types.h:122:16 */
 | 
			
		||||
type X__size_t = uint64              /* _types.h:123:24 */
 | 
			
		||||
type X__ssize_t = int64              /* _types.h:124:16 */
 | 
			
		||||
type X__va_list = X__builtin_va_list /* _types.h:126:27 */
 | 
			
		||||
 | 
			
		||||
// Wide character support types
 | 
			
		||||
type X__wchar_t = int32     /* _types.h:133:15 */
 | 
			
		||||
type X__wint_t = int32      /* _types.h:135:15 */
 | 
			
		||||
type X__rune_t = int32      /* _types.h:136:15 */
 | 
			
		||||
type X__wctrans_t = uintptr /* _types.h:137:14 */
 | 
			
		||||
type X__wctype_t = uintptr  /* _types.h:138:14 */
 | 
			
		||||
 | 
			
		||||
//	$OpenBSD: types.h,v 1.48 2019/02/09 04:54:11 guenther Exp $
 | 
			
		||||
//	$NetBSD: types.h,v 1.29 1996/11/15 22:48:25 jtc Exp $
 | 
			
		||||
 | 
			
		||||
// -
 | 
			
		||||
// Copyright (c) 1982, 1986, 1991, 1993
 | 
			
		||||
//	The Regents of the University of California.  All rights reserved.
 | 
			
		||||
// (c) UNIX System Laboratories, Inc.
 | 
			
		||||
// All or some portions of this file are derived from material licensed
 | 
			
		||||
// to the University of California by American Telephone and Telegraph
 | 
			
		||||
// Co. or Unix System Laboratories, Inc. and are reproduced herein with
 | 
			
		||||
// the permission of UNIX System Laboratories, Inc.
 | 
			
		||||
//
 | 
			
		||||
// Redistribution and use in source and binary forms, with or without
 | 
			
		||||
// modification, are permitted provided that the following conditions
 | 
			
		||||
// are met:
 | 
			
		||||
// 1. Redistributions of source code must retain the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer.
 | 
			
		||||
// 2. Redistributions in binary form must reproduce the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer in the
 | 
			
		||||
//    documentation and/or other materials provided with the distribution.
 | 
			
		||||
// 3. Neither the name of the University nor the names of its contributors
 | 
			
		||||
//    may be used to endorse or promote products derived from this software
 | 
			
		||||
//    without specific prior written permission.
 | 
			
		||||
//
 | 
			
		||||
// THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 | 
			
		||||
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 | 
			
		||||
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 | 
			
		||||
// ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 | 
			
		||||
// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 | 
			
		||||
// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 | 
			
		||||
// OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 | 
			
		||||
// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 | 
			
		||||
// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 | 
			
		||||
// OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 | 
			
		||||
// SUCH DAMAGE.
 | 
			
		||||
//
 | 
			
		||||
//	@(#)types.h	8.4 (Berkeley) 1/21/94
 | 
			
		||||
 | 
			
		||||
//	$OpenBSD: cdefs.h,v 1.43 2018/10/29 17:10:40 guenther Exp $
 | 
			
		||||
//	$NetBSD: cdefs.h,v 1.16 1996/04/03 20:46:39 christos Exp $
 | 
			
		||||
 | 
			
		||||
// Copyright (c) 1991, 1993
 | 
			
		||||
//	The Regents of the University of California.  All rights reserved.
 | 
			
		||||
//
 | 
			
		||||
// This code is derived from software contributed to Berkeley by
 | 
			
		||||
// Berkeley Software Design, Inc.
 | 
			
		||||
//
 | 
			
		||||
// Redistribution and use in source and binary forms, with or without
 | 
			
		||||
// modification, are permitted provided that the following conditions
 | 
			
		||||
// are met:
 | 
			
		||||
// 1. Redistributions of source code must retain the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer.
 | 
			
		||||
// 2. Redistributions in binary form must reproduce the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer in the
 | 
			
		||||
//    documentation and/or other materials provided with the distribution.
 | 
			
		||||
// 3. Neither the name of the University nor the names of its contributors
 | 
			
		||||
//    may be used to endorse or promote products derived from this software
 | 
			
		||||
//    without specific prior written permission.
 | 
			
		||||
//
 | 
			
		||||
// THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 | 
			
		||||
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 | 
			
		||||
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 | 
			
		||||
// ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 | 
			
		||||
// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 | 
			
		||||
// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 | 
			
		||||
// OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 | 
			
		||||
// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 | 
			
		||||
// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 | 
			
		||||
// OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 | 
			
		||||
// SUCH DAMAGE.
 | 
			
		||||
//
 | 
			
		||||
//	@(#)cdefs.h	8.7 (Berkeley) 1/21/94
 | 
			
		||||
 | 
			
		||||
//	$OpenBSD: endian.h,v 1.25 2014/12/21 04:49:00 guenther Exp $
 | 
			
		||||
 | 
			
		||||
// -
 | 
			
		||||
// Copyright (c) 1997 Niklas Hallqvist.  All rights reserved.
 | 
			
		||||
//
 | 
			
		||||
// Redistribution and use in source and binary forms, with or without
 | 
			
		||||
// modification, are permitted provided that the following conditions
 | 
			
		||||
// are met:
 | 
			
		||||
// 1. Redistributions of source code must retain the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer.
 | 
			
		||||
// 2. Redistributions in binary form must reproduce the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer in the
 | 
			
		||||
//    documentation and/or other materials provided with the distribution.
 | 
			
		||||
//
 | 
			
		||||
// THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
 | 
			
		||||
// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
 | 
			
		||||
// OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
 | 
			
		||||
// IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
 | 
			
		||||
// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
 | 
			
		||||
// NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
 | 
			
		||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
 | 
			
		||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 | 
			
		||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 | 
			
		||||
// THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 | 
			
		||||
 | 
			
		||||
// Public definitions for little- and big-endian systems.
 | 
			
		||||
// This file should be included as <endian.h> in userspace and as
 | 
			
		||||
// <sys/endian.h> in the kernel.
 | 
			
		||||
//
 | 
			
		||||
// System headers that need endian information but that can't or don't
 | 
			
		||||
// want to export the public names here should include <sys/_endian.h>
 | 
			
		||||
// and use the internal names: _BYTE_ORDER, _*_ENDIAN, etc.
 | 
			
		||||
 | 
			
		||||
//	$OpenBSD: cdefs.h,v 1.43 2018/10/29 17:10:40 guenther Exp $
 | 
			
		||||
//	$NetBSD: cdefs.h,v 1.16 1996/04/03 20:46:39 christos Exp $
 | 
			
		||||
 | 
			
		||||
// Copyright (c) 1991, 1993
 | 
			
		||||
//	The Regents of the University of California.  All rights reserved.
 | 
			
		||||
//
 | 
			
		||||
// This code is derived from software contributed to Berkeley by
 | 
			
		||||
// Berkeley Software Design, Inc.
 | 
			
		||||
//
 | 
			
		||||
// Redistribution and use in source and binary forms, with or without
 | 
			
		||||
// modification, are permitted provided that the following conditions
 | 
			
		||||
// are met:
 | 
			
		||||
// 1. Redistributions of source code must retain the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer.
 | 
			
		||||
// 2. Redistributions in binary form must reproduce the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer in the
 | 
			
		||||
//    documentation and/or other materials provided with the distribution.
 | 
			
		||||
// 3. Neither the name of the University nor the names of its contributors
 | 
			
		||||
//    may be used to endorse or promote products derived from this software
 | 
			
		||||
//    without specific prior written permission.
 | 
			
		||||
//
 | 
			
		||||
// THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 | 
			
		||||
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 | 
			
		||||
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 | 
			
		||||
// ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 | 
			
		||||
// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 | 
			
		||||
// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 | 
			
		||||
// OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 | 
			
		||||
// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 | 
			
		||||
// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 | 
			
		||||
// OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 | 
			
		||||
// SUCH DAMAGE.
 | 
			
		||||
//
 | 
			
		||||
//	@(#)cdefs.h	8.7 (Berkeley) 1/21/94
 | 
			
		||||
 | 
			
		||||
//	$OpenBSD: _endian.h,v 1.8 2018/01/11 23:13:37 dlg Exp $
 | 
			
		||||
 | 
			
		||||
// -
 | 
			
		||||
// Copyright (c) 1997 Niklas Hallqvist.  All rights reserved.
 | 
			
		||||
//
 | 
			
		||||
// Redistribution and use in source and binary forms, with or without
 | 
			
		||||
// modification, are permitted provided that the following conditions
 | 
			
		||||
// are met:
 | 
			
		||||
// 1. Redistributions of source code must retain the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer.
 | 
			
		||||
// 2. Redistributions in binary form must reproduce the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer in the
 | 
			
		||||
//    documentation and/or other materials provided with the distribution.
 | 
			
		||||
//
 | 
			
		||||
// THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
 | 
			
		||||
// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
 | 
			
		||||
// OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
 | 
			
		||||
// IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
 | 
			
		||||
// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
 | 
			
		||||
// NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
 | 
			
		||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
 | 
			
		||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 | 
			
		||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 | 
			
		||||
// THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 | 
			
		||||
 | 
			
		||||
// Internal endianness macros.  This pulls in <machine/endian.h> to
 | 
			
		||||
// get the correct setting direction for the platform and sets internal
 | 
			
		||||
// ('__' prefix) macros appropriately.
 | 
			
		||||
 | 
			
		||||
//	$OpenBSD: _types.h,v 1.9 2014/08/22 23:05:15 krw Exp $
 | 
			
		||||
 | 
			
		||||
// -
 | 
			
		||||
// Copyright (c) 1990, 1993
 | 
			
		||||
//	The Regents of the University of California.  All rights reserved.
 | 
			
		||||
//
 | 
			
		||||
// Redistribution and use in source and binary forms, with or without
 | 
			
		||||
// modification, are permitted provided that the following conditions
 | 
			
		||||
// are met:
 | 
			
		||||
// 1. Redistributions of source code must retain the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer.
 | 
			
		||||
// 2. Redistributions in binary form must reproduce the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer in the
 | 
			
		||||
//    documentation and/or other materials provided with the distribution.
 | 
			
		||||
// 3. Neither the name of the University nor the names of its contributors
 | 
			
		||||
//    may be used to endorse or promote products derived from this software
 | 
			
		||||
//    without specific prior written permission.
 | 
			
		||||
//
 | 
			
		||||
// THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 | 
			
		||||
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 | 
			
		||||
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 | 
			
		||||
// ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 | 
			
		||||
// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 | 
			
		||||
// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 | 
			
		||||
// OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 | 
			
		||||
// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 | 
			
		||||
// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 | 
			
		||||
// OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 | 
			
		||||
// SUCH DAMAGE.
 | 
			
		||||
//
 | 
			
		||||
//	@(#)types.h	8.3 (Berkeley) 1/5/94
 | 
			
		||||
 | 
			
		||||
//	$OpenBSD: _types.h,v 1.17 2018/03/05 01:15:25 deraadt Exp $
 | 
			
		||||
 | 
			
		||||
// -
 | 
			
		||||
// Copyright (c) 1990, 1993
 | 
			
		||||
//	The Regents of the University of California.  All rights reserved.
 | 
			
		||||
//
 | 
			
		||||
// Redistribution and use in source and binary forms, with or without
 | 
			
		||||
// modification, are permitted provided that the following conditions
 | 
			
		||||
// are met:
 | 
			
		||||
// 1. Redistributions of source code must retain the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer.
 | 
			
		||||
// 2. Redistributions in binary form must reproduce the above copyright
 | 
			
		||||
//    notice, this list of conditions and the following disclaimer in the
 | 
			
		||||
//    documentation and/or other materials provided with the distribution.
 | 
			
		||||
// 3. Neither the name of the University nor the names of its contributors
 | 
			
		||||
//    may be used to endorse or promote products derived from this software
 | 
			
		||||
//    without specific prior written permission.
 | 
			
		||||
//
 | 
			
		||||
// THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 | 
			
		||||
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 | 
			
		||||
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 | 
			
		||||
// ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 | 
			
		||||
// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 | 
			
		||||
// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 | 
			
		||||
// OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 | 
			
		||||
// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 | 
			
		||||
// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 | 
			
		||||
// OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 | 
			
		||||
// SUCH DAMAGE.
 | 
			
		||||
//
 | 
			
		||||
//	@(#)types.h	8.3 (Berkeley) 1/5/94
 | 
			
		||||
//	@(#)ansi.h	8.2 (Berkeley) 1/4/94
 | 
			
		||||
 | 
			
		||||
type X__blkcnt_t = X__int64_t    /* _types.h:39:19 */ // blocks allocated for file
 | 
			
		||||
type X__blksize_t = X__int32_t   /* _types.h:40:19 */ // optimal blocksize for I/O
 | 
			
		||||
type X__clock_t = X__int64_t     /* _types.h:41:19 */ // ticks in CLOCKS_PER_SEC
 | 
			
		||||
type X__clockid_t = X__int32_t   /* _types.h:42:19 */ // CLOCK_* identifiers
 | 
			
		||||
type X__cpuid_t = uint64         /* _types.h:43:23 */ // CPU id
 | 
			
		||||
type X__dev_t = X__int32_t       /* _types.h:44:19 */ // device number
 | 
			
		||||
type X__fixpt_t = X__uint32_t    /* _types.h:45:20 */ // fixed point number
 | 
			
		||||
type X__fsblkcnt_t = X__uint64_t /* _types.h:46:20 */ // file system block count
 | 
			
		||||
type X__fsfilcnt_t = X__uint64_t /* _types.h:47:20 */ // file system file count
 | 
			
		||||
type X__gid_t = X__uint32_t      /* _types.h:48:20 */ // group id
 | 
			
		||||
type X__id_t = X__uint32_t       /* _types.h:49:20 */ // may contain pid, uid or gid
 | 
			
		||||
type X__in_addr_t = X__uint32_t  /* _types.h:50:20 */ // base type for internet address
 | 
			
		||||
type X__in_port_t = X__uint16_t  /* _types.h:51:20 */ // IP port type
 | 
			
		||||
type X__ino_t = X__uint64_t      /* _types.h:52:20 */ // inode number
 | 
			
		||||
type X__key_t = int64            /* _types.h:53:15 */ // IPC key (for Sys V IPC)
 | 
			
		||||
type X__mode_t = X__uint32_t     /* _types.h:54:20 */ // permissions
 | 
			
		||||
type X__nlink_t = X__uint32_t    /* _types.h:55:20 */ // link count
 | 
			
		||||
type X__off_t = X__int64_t       /* _types.h:56:19 */ // file offset or size
 | 
			
		||||
type X__pid_t = X__int32_t       /* _types.h:57:19 */ // process id
 | 
			
		||||
type X__rlim_t = X__uint64_t     /* _types.h:58:20 */ // resource limit
 | 
			
		||||
type X__sa_family_t = X__uint8_t /* _types.h:59:19 */ // sockaddr address family type
 | 
			
		||||
type X__segsz_t = X__int32_t     /* _types.h:60:19 */ // segment size
 | 
			
		||||
type X__socklen_t = X__uint32_t  /* _types.h:61:20 */ // length type for network syscalls
 | 
			
		||||
type X__suseconds_t = int64      /* _types.h:62:15 */ // microseconds (signed)
 | 
			
		||||
type X__swblk_t = X__int32_t     /* _types.h:63:19 */ // swap offset
 | 
			
		||||
type X__time_t = X__int64_t      /* _types.h:64:19 */ // epoch time
 | 
			
		||||
type X__timer_t = X__int32_t     /* _types.h:65:19 */ // POSIX timer identifiers
 | 
			
		||||
type X__uid_t = X__uint32_t      /* _types.h:66:20 */ // user id
 | 
			
		||||
type X__useconds_t = X__uint32_t /* _types.h:67:20 */ // microseconds
 | 
			
		||||
 | 
			
		||||
// mbstate_t is an opaque object to keep conversion state, during multibyte
 | 
			
		||||
// stream conversions. The content must not be referenced by user programs.
 | 
			
		||||
type X__mbstate_t = struct {
 | 
			
		||||
	F__ccgo_pad1 [0]uint64
 | 
			
		||||
	F__mbstate8  [128]int8
 | 
			
		||||
} /* _types.h:76:3 */
 | 
			
		||||
 | 
			
		||||
// Tell sys/endian.h we have MD variants of the swap macros.
 | 
			
		||||
 | 
			
		||||
// Note that these macros evaluate their arguments several times.
 | 
			
		||||
 | 
			
		||||
// Public names
 | 
			
		||||
 | 
			
		||||
// These are specified to be function-like macros to match the spec
 | 
			
		||||
 | 
			
		||||
// POSIX names
 | 
			
		||||
 | 
			
		||||
// original BSD names
 | 
			
		||||
 | 
			
		||||
// these were exposed here before
 | 
			
		||||
 | 
			
		||||
// ancient stuff
 | 
			
		||||
 | 
			
		||||
type U_char = uint8   /* types.h:51:23 */
 | 
			
		||||
type U_short = uint16 /* types.h:52:24 */
 | 
			
		||||
type U_int = uint32   /* types.h:53:22 */
 | 
			
		||||
type U_long = uint64  /* types.h:54:23 */
 | 
			
		||||
 | 
			
		||||
type Unchar = uint8  /* types.h:56:23 */ // Sys V compatibility
 | 
			
		||||
type Ushort = uint16 /* types.h:57:24 */ // Sys V compatibility
 | 
			
		||||
type Uint = uint32   /* types.h:58:22 */ // Sys V compatibility
 | 
			
		||||
type Ulong = uint64  /* types.h:59:23 */ // Sys V compatibility
 | 
			
		||||
 | 
			
		||||
type Cpuid_t = X__cpuid_t       /* types.h:61:19 */ // CPU id
 | 
			
		||||
type Register_t = X__register_t /* types.h:62:22 */ // register-sized type
 | 
			
		||||
 | 
			
		||||
// XXX The exact-width bit types should only be exposed if __BSD_VISIBLE
 | 
			
		||||
//     but the rest of the includes are not ready for that yet.
 | 
			
		||||
 | 
			
		||||
type Int8_t = X__int8_t /* types.h:75:19 */
 | 
			
		||||
 | 
			
		||||
type Uint8_t = X__uint8_t /* types.h:80:20 */
 | 
			
		||||
 | 
			
		||||
type Int16_t = X__int16_t /* types.h:85:20 */
 | 
			
		||||
 | 
			
		||||
type Uint16_t = X__uint16_t /* types.h:90:21 */
 | 
			
		||||
 | 
			
		||||
type Int32_t = X__int32_t /* types.h:95:20 */
 | 
			
		||||
 | 
			
		||||
type Uint32_t = X__uint32_t /* types.h:100:21 */
 | 
			
		||||
 | 
			
		||||
type Int64_t = X__int64_t /* types.h:105:20 */
 | 
			
		||||
 | 
			
		||||
type Uint64_t = X__uint64_t /* types.h:110:21 */
 | 
			
		||||
 | 
			
		||||
// BSD-style unsigned bits types
 | 
			
		||||
type U_int8_t = X__uint8_t   /* types.h:114:19 */
 | 
			
		||||
type U_int16_t = X__uint16_t /* types.h:115:20 */
 | 
			
		||||
type U_int32_t = X__uint32_t /* types.h:116:20 */
 | 
			
		||||
type U_int64_t = X__uint64_t /* types.h:117:20 */
 | 
			
		||||
 | 
			
		||||
// quads, deprecated in favor of 64 bit int types
 | 
			
		||||
type Quad_t = X__int64_t    /* types.h:120:19 */
 | 
			
		||||
type U_quad_t = X__uint64_t /* types.h:121:20 */
 | 
			
		||||
 | 
			
		||||
// VM system types
 | 
			
		||||
type Vaddr_t = X__vaddr_t /* types.h:125:19 */
 | 
			
		||||
type Paddr_t = X__paddr_t /* types.h:126:19 */
 | 
			
		||||
type Vsize_t = X__vsize_t /* types.h:127:19 */
 | 
			
		||||
type Psize_t = X__psize_t /* types.h:128:19 */
 | 
			
		||||
 | 
			
		||||
// Standard system types
 | 
			
		||||
type Blkcnt_t = X__blkcnt_t       /* types.h:132:20 */ // blocks allocated for file
 | 
			
		||||
type Blksize_t = X__blksize_t     /* types.h:133:21 */ // optimal blocksize for I/O
 | 
			
		||||
type Caddr_t = uintptr            /* types.h:134:14 */ // core address
 | 
			
		||||
type Daddr32_t = X__int32_t       /* types.h:135:19 */ // 32-bit disk address
 | 
			
		||||
type Daddr_t = X__int64_t         /* types.h:136:19 */ // 64-bit disk address
 | 
			
		||||
type Dev_t = X__dev_t             /* types.h:137:18 */ // device number
 | 
			
		||||
type Fixpt_t = X__fixpt_t         /* types.h:138:19 */ // fixed point number
 | 
			
		||||
type Gid_t = X__gid_t             /* types.h:139:18 */ // group id
 | 
			
		||||
type Id_t = X__id_t               /* types.h:140:17 */ // may contain pid, uid or gid
 | 
			
		||||
type Ino_t = X__ino_t             /* types.h:141:18 */ // inode number
 | 
			
		||||
type Key_t = X__key_t             /* types.h:142:18 */ // IPC key (for Sys V IPC)
 | 
			
		||||
type Mode_t = X__mode_t           /* types.h:143:18 */ // permissions
 | 
			
		||||
type Nlink_t = X__nlink_t         /* types.h:144:19 */ // link count
 | 
			
		||||
type Rlim_t = X__rlim_t           /* types.h:145:18 */ // resource limit
 | 
			
		||||
type Segsz_t = X__segsz_t         /* types.h:146:19 */ // segment size
 | 
			
		||||
type Swblk_t = X__swblk_t         /* types.h:147:19 */ // swap offset
 | 
			
		||||
type Uid_t = X__uid_t             /* types.h:148:18 */ // user id
 | 
			
		||||
type Useconds_t = X__useconds_t   /* types.h:149:22 */ // microseconds
 | 
			
		||||
type Suseconds_t = X__suseconds_t /* types.h:150:23 */ // microseconds (signed)
 | 
			
		||||
type Fsblkcnt_t = X__fsblkcnt_t   /* types.h:151:22 */ // file system block count
 | 
			
		||||
type Fsfilcnt_t = X__fsfilcnt_t   /* types.h:152:22 */ // file system file count
 | 
			
		||||
 | 
			
		||||
// The following types may be defined in multiple header files.
 | 
			
		||||
type Clock_t = X__clock_t /* types.h:159:19 */
 | 
			
		||||
 | 
			
		||||
type Clockid_t = X__clockid_t /* types.h:164:21 */
 | 
			
		||||
 | 
			
		||||
type Pid_t = X__pid_t /* types.h:169:18 */
 | 
			
		||||
 | 
			
		||||
type Ssize_t = X__ssize_t /* types.h:179:19 */
 | 
			
		||||
 | 
			
		||||
type Time_t = X__time_t /* types.h:184:18 */
 | 
			
		||||
 | 
			
		||||
type Timer_t = X__timer_t /* types.h:189:19 */
 | 
			
		||||
 | 
			
		||||
type Off_t = X__off_t /* types.h:194:18 */
 | 
			
		||||
 | 
			
		||||
type Div_t = struct {
 | 
			
		||||
	Fquot int32
 | 
			
		||||
	Frem  int32
 | 
			
		||||
} /* stdlib.h:59:3 */
 | 
			
		||||
 | 
			
		||||
type Ldiv_t = struct {
 | 
			
		||||
	Fquot int64
 | 
			
		||||
	Frem  int64
 | 
			
		||||
} /* stdlib.h:64:3 */
 | 
			
		||||
 | 
			
		||||
type Lldiv_t = struct {
 | 
			
		||||
	Fquot int64
 | 
			
		||||
	Frem  int64
 | 
			
		||||
} /* stdlib.h:70:3 */
 | 
			
		||||
 | 
			
		||||
type Qdiv_t = struct {
 | 
			
		||||
	Fquot Quad_t
 | 
			
		||||
	Frem  Quad_t
 | 
			
		||||
} /* stdlib.h:77:3 */
 | 
			
		||||
 | 
			
		||||
var _ int8 /* gen.c:2:13: */
 | 
			
		||||
							
								
								
									
										547
									
								
								vendor/modernc.org/libc/stdlib/stdlib_windows_386.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										547
									
								
								vendor/modernc.org/libc/stdlib/stdlib_windows_386.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,547 @@
 | 
			
		||||
// Code generated by 'ccgo stdlib/gen.c -crt-import-path "" -export-defines "" -export-enums "" -export-externs X -export-fields F -export-structs "" -export-typedefs "" -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o stdlib/stdlib_windows_386.go -pkgname stdlib', DO NOT EDIT.
 | 
			
		||||
 | 
			
		||||
package stdlib
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"math"
 | 
			
		||||
	"reflect"
 | 
			
		||||
	"sync/atomic"
 | 
			
		||||
	"unsafe"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
var _ = math.Pi
 | 
			
		||||
var _ reflect.Kind
 | 
			
		||||
var _ atomic.Value
 | 
			
		||||
var _ unsafe.Pointer
 | 
			
		||||
 | 
			
		||||
const (
 | 
			
		||||
	CHAR_BIT                                        = 8
 | 
			
		||||
	CHAR_MAX                                        = 127
 | 
			
		||||
	CHAR_MIN                                        = -128
 | 
			
		||||
	DUMMYSTRUCTNAME                                 = 0
 | 
			
		||||
	DUMMYSTRUCTNAME1                                = 0
 | 
			
		||||
	DUMMYSTRUCTNAME2                                = 0
 | 
			
		||||
	DUMMYSTRUCTNAME3                                = 0
 | 
			
		||||
	DUMMYSTRUCTNAME4                                = 0
 | 
			
		||||
	DUMMYSTRUCTNAME5                                = 0
 | 
			
		||||
	DUMMYUNIONNAME                                  = 0
 | 
			
		||||
	DUMMYUNIONNAME1                                 = 0
 | 
			
		||||
	DUMMYUNIONNAME2                                 = 0
 | 
			
		||||
	DUMMYUNIONNAME3                                 = 0
 | 
			
		||||
	DUMMYUNIONNAME4                                 = 0
 | 
			
		||||
	DUMMYUNIONNAME5                                 = 0
 | 
			
		||||
	DUMMYUNIONNAME6                                 = 0
 | 
			
		||||
	DUMMYUNIONNAME7                                 = 0
 | 
			
		||||
	DUMMYUNIONNAME8                                 = 0
 | 
			
		||||
	DUMMYUNIONNAME9                                 = 0
 | 
			
		||||
	EXIT_FAILURE                                    = 1
 | 
			
		||||
	EXIT_SUCCESS                                    = 0
 | 
			
		||||
	INT_MAX                                         = 2147483647
 | 
			
		||||
	INT_MIN                                         = -2147483648
 | 
			
		||||
	LLONG_MAX                                       = 9223372036854775807
 | 
			
		||||
	LLONG_MIN                                       = -9223372036854775808
 | 
			
		||||
	LONG_LONG_MAX                                   = 9223372036854775807
 | 
			
		||||
	LONG_LONG_MIN                                   = -9223372036854775808
 | 
			
		||||
	LONG_MAX                                        = 2147483647
 | 
			
		||||
	LONG_MIN                                        = -2147483648
 | 
			
		||||
	MB_LEN_MAX                                      = 5
 | 
			
		||||
	MINGW_DDK_H                                     = 0
 | 
			
		||||
	MINGW_HAS_DDK_H                                 = 1
 | 
			
		||||
	MINGW_HAS_SECURE_API                            = 1
 | 
			
		||||
	MINGW_SDK_INIT                                  = 0
 | 
			
		||||
	PATH_MAX                                        = 260
 | 
			
		||||
	RAND_MAX                                        = 0x7fff
 | 
			
		||||
	SCHAR_MAX                                       = 127
 | 
			
		||||
	SCHAR_MIN                                       = -128
 | 
			
		||||
	SHRT_MAX                                        = 32767
 | 
			
		||||
	SHRT_MIN                                        = -32768
 | 
			
		||||
	SIZE_MAX                                        = 4294967295
 | 
			
		||||
	SSIZE_MAX                                       = 2147483647
 | 
			
		||||
	UCHAR_MAX                                       = 255
 | 
			
		||||
	UINT_MAX                                        = 4294967295
 | 
			
		||||
	ULLONG_MAX                                      = 18446744073709551615
 | 
			
		||||
	ULONG_LONG_MAX                                  = 18446744073709551615
 | 
			
		||||
	ULONG_MAX                                       = 4294967295
 | 
			
		||||
	UNALIGNED                                       = 0
 | 
			
		||||
	USE___UUIDOF                                    = 0
 | 
			
		||||
	USHRT_MAX                                       = 65535
 | 
			
		||||
	WIN32                                           = 1
 | 
			
		||||
	WINNT                                           = 1
 | 
			
		||||
	X_AGLOBAL                                       = 0
 | 
			
		||||
	X_ALLOCA_S_HEAP_MARKER                          = 0xDDDD
 | 
			
		||||
	X_ALLOCA_S_MARKER_SIZE                          = 8
 | 
			
		||||
	X_ALLOCA_S_STACK_MARKER                         = 0xCCCC
 | 
			
		||||
	X_ALLOCA_S_THRESHOLD                            = 1024
 | 
			
		||||
	X_ANONYMOUS_STRUCT                              = 0
 | 
			
		||||
	X_ANONYMOUS_UNION                               = 0
 | 
			
		||||
	X_ARGMAX                                        = 100
 | 
			
		||||
	X_CALL_REPORTFAULT                              = 0x2
 | 
			
		||||
	X_CONST_RETURN                                  = 0
 | 
			
		||||
	X_CRTNOALIAS                                    = 0
 | 
			
		||||
	X_CRTRESTRICT                                   = 0
 | 
			
		||||
	X_CRT_ABS_DEFINED                               = 0
 | 
			
		||||
	X_CRT_ALGO_DEFINED                              = 0
 | 
			
		||||
	X_CRT_ALLOCATION_DEFINED                        = 0
 | 
			
		||||
	X_CRT_ALTERNATIVE_IMPORTED                      = 0
 | 
			
		||||
	X_CRT_ATOF_DEFINED                              = 0
 | 
			
		||||
	X_CRT_DOUBLE_DEC                                = 0
 | 
			
		||||
	X_CRT_ERRNO_DEFINED                             = 0
 | 
			
		||||
	X_CRT_MANAGED_HEAP_DEPRECATE                    = 0
 | 
			
		||||
	X_CRT_PACKING                                   = 8
 | 
			
		||||
	X_CRT_PERROR_DEFINED                            = 0
 | 
			
		||||
	X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES          = 0
 | 
			
		||||
	X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY   = 0
 | 
			
		||||
	X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES        = 0
 | 
			
		||||
	X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT  = 0
 | 
			
		||||
	X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY = 0
 | 
			
		||||
	X_CRT_SWAB_DEFINED                              = 0
 | 
			
		||||
	X_CRT_SYSTEM_DEFINED                            = 0
 | 
			
		||||
	X_CRT_TERMINATE_DEFINED                         = 0
 | 
			
		||||
	X_CRT_USE_WINAPI_FAMILY_DESKTOP_APP             = 0
 | 
			
		||||
	X_CRT_WPERROR_DEFINED                           = 0
 | 
			
		||||
	X_CRT_WSYSTEM_DEFINED                           = 0
 | 
			
		||||
	X_CVTBUFSIZE                                    = 349
 | 
			
		||||
	X_DIV_T_DEFINED                                 = 0
 | 
			
		||||
	X_DLL                                           = 0
 | 
			
		||||
	X_ERRCODE_DEFINED                               = 0
 | 
			
		||||
	X_FILE_OFFSET_BITS                              = 64
 | 
			
		||||
	X_FREEA_INLINE                                  = 0
 | 
			
		||||
	X_FREEENTRY                                     = 0
 | 
			
		||||
	X_GCC_LIMITS_H_                                 = 0
 | 
			
		||||
	X_HEAPBADBEGIN                                  = -3
 | 
			
		||||
	X_HEAPBADNODE                                   = -4
 | 
			
		||||
	X_HEAPBADPTR                                    = -6
 | 
			
		||||
	X_HEAPEMPTY                                     = -1
 | 
			
		||||
	X_HEAPEND                                       = -5
 | 
			
		||||
	X_HEAPINFO_DEFINED                              = 0
 | 
			
		||||
	X_HEAPOK                                        = -2
 | 
			
		||||
	X_HEAP_MAXREQ                                   = 0xFFFFFFE0
 | 
			
		||||
	X_I16_MAX                                       = 32767
 | 
			
		||||
	X_I16_MIN                                       = -32768
 | 
			
		||||
	X_I32_MAX                                       = 2147483647
 | 
			
		||||
	X_I32_MIN                                       = -2147483648
 | 
			
		||||
	X_I64_MAX                                       = 9223372036854775807
 | 
			
		||||
	X_I64_MIN                                       = -9223372036854775808
 | 
			
		||||
	X_I8_MAX                                        = 127
 | 
			
		||||
	X_I8_MIN                                        = -128
 | 
			
		||||
	X_ILP32                                         = 1
 | 
			
		||||
	X_INC_CORECRT                                   = 0
 | 
			
		||||
	X_INC_CORECRT_WSTDLIB                           = 0
 | 
			
		||||
	X_INC_CRTDEFS                                   = 0
 | 
			
		||||
	X_INC_CRTDEFS_MACRO                             = 0
 | 
			
		||||
	X_INC_LIMITS                                    = 0
 | 
			
		||||
	X_INC_MINGW_SECAPI                              = 0
 | 
			
		||||
	X_INC_STDLIB                                    = 0
 | 
			
		||||
	X_INC_STDLIB_S                                  = 0
 | 
			
		||||
	X_INC_VADEFS                                    = 0
 | 
			
		||||
	X_INC__MINGW_H                                  = 0
 | 
			
		||||
	X_INT128_DEFINED                                = 0
 | 
			
		||||
	X_INTEGRAL_MAX_BITS                             = 64
 | 
			
		||||
	X_INTPTR_T_DEFINED                              = 0
 | 
			
		||||
	X_LIMITS_H___                                   = 0
 | 
			
		||||
	X_MALLOC_H_                                     = 0
 | 
			
		||||
	X_MAX_DIR                                       = 256
 | 
			
		||||
	X_MAX_DRIVE                                     = 3
 | 
			
		||||
	X_MAX_ENV                                       = 32767
 | 
			
		||||
	X_MAX_EXT                                       = 256
 | 
			
		||||
	X_MAX_FNAME                                     = 256
 | 
			
		||||
	X_MAX_PATH                                      = 260
 | 
			
		||||
	X_MAX_WAIT_MALLOC_CRT                           = 60000
 | 
			
		||||
	X_MM_MALLOC_H_INCLUDED                          = 0
 | 
			
		||||
	X_MT                                            = 0
 | 
			
		||||
	X_M_IX86                                        = 600
 | 
			
		||||
	X_ONEXIT_T_DEFINED                              = 0
 | 
			
		||||
	X_OUT_TO_DEFAULT                                = 0
 | 
			
		||||
	X_OUT_TO_MSGBOX                                 = 2
 | 
			
		||||
	X_OUT_TO_STDERR                                 = 1
 | 
			
		||||
	X_PGLOBAL                                       = 0
 | 
			
		||||
	X_PTRDIFF_T_                                    = 0
 | 
			
		||||
	X_PTRDIFF_T_DEFINED                             = 0
 | 
			
		||||
	X_QSORT_S_DEFINED                               = 0
 | 
			
		||||
	X_REPORT_ERRMODE                                = 3
 | 
			
		||||
	X_RSIZE_T_DEFINED                               = 0
 | 
			
		||||
	X_SECURECRT_FILL_BUFFER_PATTERN                 = 0xFD
 | 
			
		||||
	X_SIZE_T_DEFINED                                = 0
 | 
			
		||||
	X_SSIZE_T_DEFINED                               = 0
 | 
			
		||||
	X_TAGLC_ID_DEFINED                              = 0
 | 
			
		||||
	X_THREADLOCALEINFO                              = 0
 | 
			
		||||
	X_TIME32_T_DEFINED                              = 0
 | 
			
		||||
	X_TIME64_T_DEFINED                              = 0
 | 
			
		||||
	X_TIME_T_DEFINED                                = 0
 | 
			
		||||
	X_UI16_MAX                                      = 0xffff
 | 
			
		||||
	X_UI32_MAX                                      = 0xffffffff
 | 
			
		||||
	X_UI64_MAX                                      = 0xffffffffffffffff
 | 
			
		||||
	X_UI8_MAX                                       = 0xff
 | 
			
		||||
	X_UINTPTR_T_DEFINED                             = 0
 | 
			
		||||
	X_USEDENTRY                                     = 1
 | 
			
		||||
	X_USE_32BIT_TIME_T                              = 0
 | 
			
		||||
	X_VA_LIST_DEFINED                               = 0
 | 
			
		||||
	X_W64                                           = 0
 | 
			
		||||
	X_WCHAR_T_DEFINED                               = 0
 | 
			
		||||
	X_WCTYPE_T_DEFINED                              = 0
 | 
			
		||||
	X_WIN32                                         = 1
 | 
			
		||||
	X_WIN32_WINNT                                   = 0x502
 | 
			
		||||
	X_WINT_T                                        = 0
 | 
			
		||||
	X_WRITE_ABORT_MSG                               = 0x1
 | 
			
		||||
	X_WSTDLIBP_DEFINED                              = 0
 | 
			
		||||
	X_WSTDLIB_DEFINED                               = 0
 | 
			
		||||
	X_X86_                                          = 1
 | 
			
		||||
	I386                                            = 1
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
type Ptrdiff_t = int32 /* <builtin>:3:26 */
 | 
			
		||||
 | 
			
		||||
type Size_t = uint32 /* <builtin>:9:23 */
 | 
			
		||||
 | 
			
		||||
type Wchar_t = uint16 /* <builtin>:15:24 */
 | 
			
		||||
 | 
			
		||||
type X__builtin_va_list = uintptr /* <builtin>:46:14 */
 | 
			
		||||
type X__float128 = float64        /* <builtin>:47:21 */
 | 
			
		||||
 | 
			
		||||
type Va_list = X__builtin_va_list /* <builtin>:50:27 */
 | 
			
		||||
 | 
			
		||||
// *
 | 
			
		||||
// This file has no copyright assigned and is placed in the Public Domain.
 | 
			
		||||
// This file is part of the mingw-w64 runtime package.
 | 
			
		||||
// No warranty is given; refer to the file DISCLAIMER.PD within this package.
 | 
			
		||||
 | 
			
		||||
// *
 | 
			
		||||
// This file has no copyright assigned and is placed in the Public Domain.
 | 
			
		||||
// This file is part of the mingw-w64 runtime package.
 | 
			
		||||
// No warranty is given; refer to the file DISCLAIMER.PD within this package.
 | 
			
		||||
 | 
			
		||||
// *
 | 
			
		||||
// This file has no copyright assigned and is placed in the Public Domain.
 | 
			
		||||
// This file is part of the mingw-w64 runtime package.
 | 
			
		||||
// No warranty is given; refer to the file DISCLAIMER.PD within this package.
 | 
			
		||||
 | 
			
		||||
// *
 | 
			
		||||
// This file has no copyright assigned and is placed in the Public Domain.
 | 
			
		||||
// This file is part of the mingw-w64 runtime package.
 | 
			
		||||
// No warranty is given; refer to the file DISCLAIMER.PD within this package.
 | 
			
		||||
 | 
			
		||||
// This macro holds an monotonic increasing value, which indicates
 | 
			
		||||
//    a specific fix/patch is present on trunk.  This value isn't related to
 | 
			
		||||
//    minor/major version-macros.  It is increased on demand, if a big
 | 
			
		||||
//    fix was applied to trunk.  This macro gets just increased on trunk.  For
 | 
			
		||||
//    other branches its value won't be modified.
 | 
			
		||||
 | 
			
		||||
// mingw.org's version macros: these make gcc to define
 | 
			
		||||
//    MINGW32_SUPPORTS_MT_EH and to use the _CRT_MT global
 | 
			
		||||
//    and the __mingwthr_key_dtor() function from the MinGW
 | 
			
		||||
//    CRT in its private gthr-win32.h header.
 | 
			
		||||
 | 
			
		||||
// Set VC specific compiler target macros.
 | 
			
		||||
 | 
			
		||||
// For x86 we have always to prefix by underscore.
 | 
			
		||||
 | 
			
		||||
// Special case nameless struct/union.
 | 
			
		||||
 | 
			
		||||
// MinGW-w64 has some additional C99 printf/scanf feature support.
 | 
			
		||||
//    So we add some helper macros to ease recognition of them.
 | 
			
		||||
 | 
			
		||||
// If _FORTIFY_SOURCE is enabled, some inline functions may use
 | 
			
		||||
//    __builtin_va_arg_pack().  GCC may report an error if the address
 | 
			
		||||
//    of such a function is used.  Set _FORTIFY_VA_ARG=0 in this case.
 | 
			
		||||
 | 
			
		||||
// Enable workaround for ABI incompatibility on affected platforms
 | 
			
		||||
 | 
			
		||||
// *
 | 
			
		||||
// This file has no copyright assigned and is placed in the Public Domain.
 | 
			
		||||
// This file is part of the mingw-w64 runtime package.
 | 
			
		||||
// No warranty is given; refer to the file DISCLAIMER.PD within this package.
 | 
			
		||||
 | 
			
		||||
// http://msdn.microsoft.com/en-us/library/ms175759%28v=VS.100%29.aspx
 | 
			
		||||
// Templates won't work in C, will break if secure API is not enabled, disabled
 | 
			
		||||
 | 
			
		||||
// https://blogs.msdn.com/b/sdl/archive/2010/02/16/vc-2010-and-memcpy.aspx?Redirected=true
 | 
			
		||||
// fallback on default implementation if we can't know the size of the destination
 | 
			
		||||
 | 
			
		||||
// Include _cygwin.h if we're building a Cygwin application.
 | 
			
		||||
 | 
			
		||||
// Target specific macro replacement for type "long".  In the Windows API,
 | 
			
		||||
//    the type long is always 32 bit, even if the target is 64 bit (LLP64).
 | 
			
		||||
//    On 64 bit Cygwin, the type long is 64 bit (LP64).  So, to get the right
 | 
			
		||||
//    sized definitions and declarations, all usage of type long in the Windows
 | 
			
		||||
//    headers have to be replaced by the below defined macro __LONG32.
 | 
			
		||||
 | 
			
		||||
// C/C++ specific language defines.
 | 
			
		||||
 | 
			
		||||
// Note the extern. This is needed to work around GCC's
 | 
			
		||||
// limitations in handling dllimport attribute.
 | 
			
		||||
 | 
			
		||||
// Attribute `nonnull' was valid as of gcc 3.3.  We don't use GCC's
 | 
			
		||||
//    variadiac macro facility, because variadic macros cause syntax
 | 
			
		||||
//    errors with  --traditional-cpp.
 | 
			
		||||
 | 
			
		||||
//  High byte is the major version, low byte is the minor.
 | 
			
		||||
 | 
			
		||||
// *
 | 
			
		||||
// This file has no copyright assigned and is placed in the Public Domain.
 | 
			
		||||
// This file is part of the mingw-w64 runtime package.
 | 
			
		||||
// No warranty is given; refer to the file DISCLAIMER.PD within this package.
 | 
			
		||||
 | 
			
		||||
// *
 | 
			
		||||
// This file has no copyright assigned and is placed in the Public Domain.
 | 
			
		||||
// This file is part of the mingw-w64 runtime package.
 | 
			
		||||
// No warranty is given; refer to the file DISCLAIMER.PD within this package.
 | 
			
		||||
 | 
			
		||||
// for backward compatibility
 | 
			
		||||
 | 
			
		||||
type X__gnuc_va_list = X__builtin_va_list /* vadefs.h:24:29 */
 | 
			
		||||
 | 
			
		||||
type Ssize_t = int32 /* corecrt.h:52:13 */
 | 
			
		||||
 | 
			
		||||
type Rsize_t = Size_t /* corecrt.h:57:16 */
 | 
			
		||||
 | 
			
		||||
type Intptr_t = int32 /* corecrt.h:69:13 */
 | 
			
		||||
 | 
			
		||||
type Uintptr_t = uint32 /* corecrt.h:82:22 */
 | 
			
		||||
 | 
			
		||||
type Wint_t = uint16   /* corecrt.h:111:24 */
 | 
			
		||||
type Wctype_t = uint16 /* corecrt.h:112:24 */
 | 
			
		||||
 | 
			
		||||
type Errno_t = int32 /* corecrt.h:118:13 */
 | 
			
		||||
 | 
			
		||||
type X__time32_t = int32 /* corecrt.h:123:14 */
 | 
			
		||||
 | 
			
		||||
type X__time64_t = int64 /* corecrt.h:128:35 */
 | 
			
		||||
 | 
			
		||||
type Time_t = X__time32_t /* corecrt.h:141:20 */
 | 
			
		||||
 | 
			
		||||
type Threadlocaleinfostruct = struct {
 | 
			
		||||
	Frefcount      int32
 | 
			
		||||
	Flc_codepage   uint32
 | 
			
		||||
	Flc_collate_cp uint32
 | 
			
		||||
	Flc_handle     [6]uint32
 | 
			
		||||
	Flc_id         [6]LC_ID
 | 
			
		||||
	Flc_category   [6]struct {
 | 
			
		||||
		Flocale    uintptr
 | 
			
		||||
		Fwlocale   uintptr
 | 
			
		||||
		Frefcount  uintptr
 | 
			
		||||
		Fwrefcount uintptr
 | 
			
		||||
	}
 | 
			
		||||
	Flc_clike            int32
 | 
			
		||||
	Fmb_cur_max          int32
 | 
			
		||||
	Flconv_intl_refcount uintptr
 | 
			
		||||
	Flconv_num_refcount  uintptr
 | 
			
		||||
	Flconv_mon_refcount  uintptr
 | 
			
		||||
	Flconv               uintptr
 | 
			
		||||
	Fctype1_refcount     uintptr
 | 
			
		||||
	Fctype1              uintptr
 | 
			
		||||
	Fpctype              uintptr
 | 
			
		||||
	Fpclmap              uintptr
 | 
			
		||||
	Fpcumap              uintptr
 | 
			
		||||
	Flc_time_curr        uintptr
 | 
			
		||||
} /* corecrt.h:435:1 */
 | 
			
		||||
 | 
			
		||||
type Pthreadlocinfo = uintptr /* corecrt.h:437:39 */
 | 
			
		||||
type Pthreadmbcinfo = uintptr /* corecrt.h:438:36 */
 | 
			
		||||
 | 
			
		||||
type Localeinfo_struct = struct {
 | 
			
		||||
	Flocinfo Pthreadlocinfo
 | 
			
		||||
	Fmbcinfo Pthreadmbcinfo
 | 
			
		||||
} /* corecrt.h:441:9 */
 | 
			
		||||
 | 
			
		||||
type X_locale_tstruct = Localeinfo_struct /* corecrt.h:444:3 */
 | 
			
		||||
type X_locale_t = uintptr                 /* corecrt.h:444:19 */
 | 
			
		||||
 | 
			
		||||
type TagLC_ID = struct {
 | 
			
		||||
	FwLanguage uint16
 | 
			
		||||
	FwCountry  uint16
 | 
			
		||||
	FwCodePage uint16
 | 
			
		||||
} /* corecrt.h:435:1 */
 | 
			
		||||
 | 
			
		||||
type LC_ID = TagLC_ID  /* corecrt.h:452:3 */
 | 
			
		||||
type LPLC_ID = uintptr /* corecrt.h:452:9 */
 | 
			
		||||
 | 
			
		||||
type Threadlocinfo = Threadlocaleinfostruct /* corecrt.h:487:3 */
 | 
			
		||||
 | 
			
		||||
// Copyright (C) 1992-2020 Free Software Foundation, Inc.
 | 
			
		||||
//
 | 
			
		||||
// This file is part of GCC.
 | 
			
		||||
//
 | 
			
		||||
// GCC is free software; you can redistribute it and/or modify it under
 | 
			
		||||
// the terms of the GNU General Public License as published by the Free
 | 
			
		||||
// Software Foundation; either version 3, or (at your option) any later
 | 
			
		||||
// version.
 | 
			
		||||
//
 | 
			
		||||
// GCC is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
// WARRANTY; without even the implied warranty of MERCHANTABILITY or
 | 
			
		||||
// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
 | 
			
		||||
// for more details.
 | 
			
		||||
//
 | 
			
		||||
// Under Section 7 of GPL version 3, you are granted additional
 | 
			
		||||
// permissions described in the GCC Runtime Library Exception, version
 | 
			
		||||
// 3.1, as published by the Free Software Foundation.
 | 
			
		||||
//
 | 
			
		||||
// You should have received a copy of the GNU General Public License and
 | 
			
		||||
// a copy of the GCC Runtime Library Exception along with this program;
 | 
			
		||||
// see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
 | 
			
		||||
// <http://www.gnu.org/licenses/>.
 | 
			
		||||
 | 
			
		||||
// This administrivia gets added to the beginning of limits.h
 | 
			
		||||
//    if the system has its own version of limits.h.
 | 
			
		||||
 | 
			
		||||
// We use _GCC_LIMITS_H_ because we want this not to match
 | 
			
		||||
//    any macros that the system's limits.h uses for its own purposes.
 | 
			
		||||
 | 
			
		||||
// Use "..." so that we find syslimits.h only in this same directory.
 | 
			
		||||
// syslimits.h stands for the system's own limits.h file.
 | 
			
		||||
//    If we can use it ok unmodified, then we install this text.
 | 
			
		||||
//    If fixincludes fixes it, then the fixed version is installed
 | 
			
		||||
//    instead of this text.
 | 
			
		||||
 | 
			
		||||
// *
 | 
			
		||||
// This file has no copyright assigned and is placed in the Public Domain.
 | 
			
		||||
// This file is part of the mingw-w64 runtime package.
 | 
			
		||||
// No warranty is given; refer to the file DISCLAIMER.PD within this package.
 | 
			
		||||
// *
 | 
			
		||||
// This file has no copyright assigned and is placed in the Public Domain.
 | 
			
		||||
// This file is part of the mingw-w64 runtime package.
 | 
			
		||||
// No warranty is given; refer to the file DISCLAIMER.PD within this package.
 | 
			
		||||
 | 
			
		||||
// *
 | 
			
		||||
// This file has no copyright assigned and is placed in the Public Domain.
 | 
			
		||||
// This file is part of the mingw-w64 runtime package.
 | 
			
		||||
// No warranty is given; refer to the file DISCLAIMER.PD within this package.
 | 
			
		||||
 | 
			
		||||
// File system limits
 | 
			
		||||
//
 | 
			
		||||
// NOTE: Apparently the actual size of PATH_MAX is 260, but a space is
 | 
			
		||||
//       required for the NUL. TODO: Test?
 | 
			
		||||
// NOTE: PATH_MAX is the POSIX equivalent for Microsoft's MAX_PATH; the two
 | 
			
		||||
//       are semantically identical, with a limit of 259 characters for the
 | 
			
		||||
//       path name, plus one for a terminating NUL, for a total of 260.
 | 
			
		||||
 | 
			
		||||
// Copyright (C) 1991-2020 Free Software Foundation, Inc.
 | 
			
		||||
//
 | 
			
		||||
// This file is part of GCC.
 | 
			
		||||
//
 | 
			
		||||
// GCC is free software; you can redistribute it and/or modify it under
 | 
			
		||||
// the terms of the GNU General Public License as published by the Free
 | 
			
		||||
// Software Foundation; either version 3, or (at your option) any later
 | 
			
		||||
// version.
 | 
			
		||||
//
 | 
			
		||||
// GCC is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
// WARRANTY; without even the implied warranty of MERCHANTABILITY or
 | 
			
		||||
// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
 | 
			
		||||
// for more details.
 | 
			
		||||
//
 | 
			
		||||
// Under Section 7 of GPL version 3, you are granted additional
 | 
			
		||||
// permissions described in the GCC Runtime Library Exception, version
 | 
			
		||||
// 3.1, as published by the Free Software Foundation.
 | 
			
		||||
//
 | 
			
		||||
// You should have received a copy of the GNU General Public License and
 | 
			
		||||
// a copy of the GCC Runtime Library Exception along with this program;
 | 
			
		||||
// see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
 | 
			
		||||
// <http://www.gnu.org/licenses/>.
 | 
			
		||||
 | 
			
		||||
// Number of bits in a `char'.
 | 
			
		||||
 | 
			
		||||
// Maximum length of a multibyte character.
 | 
			
		||||
 | 
			
		||||
// Minimum and maximum values a `signed char' can hold.
 | 
			
		||||
 | 
			
		||||
// Maximum value an `unsigned char' can hold.  (Minimum is 0).
 | 
			
		||||
 | 
			
		||||
// Minimum and maximum values a `char' can hold.
 | 
			
		||||
 | 
			
		||||
// Minimum and maximum values a `signed short int' can hold.
 | 
			
		||||
 | 
			
		||||
// Maximum value an `unsigned short int' can hold.  (Minimum is 0).
 | 
			
		||||
 | 
			
		||||
// Minimum and maximum values a `signed int' can hold.
 | 
			
		||||
 | 
			
		||||
// Maximum value an `unsigned int' can hold.  (Minimum is 0).
 | 
			
		||||
 | 
			
		||||
// Minimum and maximum values a `signed long int' can hold.
 | 
			
		||||
//    (Same as `int').
 | 
			
		||||
 | 
			
		||||
// Maximum value an `unsigned long int' can hold.  (Minimum is 0).
 | 
			
		||||
 | 
			
		||||
// Minimum and maximum values a `signed long long int' can hold.
 | 
			
		||||
 | 
			
		||||
// Maximum value an `unsigned long long int' can hold.  (Minimum is 0).
 | 
			
		||||
 | 
			
		||||
// Minimum and maximum values a `signed long long int' can hold.
 | 
			
		||||
 | 
			
		||||
// Maximum value an `unsigned long long int' can hold.  (Minimum is 0).
 | 
			
		||||
 | 
			
		||||
// This administrivia gets added to the end of limits.h
 | 
			
		||||
//    if the system has its own version of limits.h.
 | 
			
		||||
 | 
			
		||||
type X_onexit_t = uintptr /* stdlib.h:50:15 */
 | 
			
		||||
 | 
			
		||||
type X_div_t = struct {
 | 
			
		||||
	Fquot int32
 | 
			
		||||
	Frem  int32
 | 
			
		||||
} /* stdlib.h:60:11 */
 | 
			
		||||
 | 
			
		||||
type Div_t = X_div_t /* stdlib.h:63:5 */
 | 
			
		||||
 | 
			
		||||
type X_ldiv_t = struct {
 | 
			
		||||
	Fquot int32
 | 
			
		||||
	Frem  int32
 | 
			
		||||
} /* stdlib.h:65:11 */
 | 
			
		||||
 | 
			
		||||
type Ldiv_t = X_ldiv_t /* stdlib.h:68:5 */
 | 
			
		||||
 | 
			
		||||
type X_LDOUBLE = struct{ Fld [10]uint8 } /* stdlib.h:77:5 */
 | 
			
		||||
 | 
			
		||||
type X_CRT_DOUBLE = struct{ Fx float64 } /* stdlib.h:84:5 */
 | 
			
		||||
 | 
			
		||||
type X_CRT_FLOAT = struct{ Ff float32 } /* stdlib.h:88:5 */
 | 
			
		||||
 | 
			
		||||
type X_LONGDOUBLE = struct{ Fx float64 } /* stdlib.h:95:5 */
 | 
			
		||||
 | 
			
		||||
type X_LDBL12 = struct{ Fld12 [12]uint8 } /* stdlib.h:102:5 */
 | 
			
		||||
 | 
			
		||||
type X_purecall_handler = uintptr /* stdlib.h:143:16 */
 | 
			
		||||
 | 
			
		||||
type X_invalid_parameter_handler = uintptr /* stdlib.h:148:16 */
 | 
			
		||||
 | 
			
		||||
type Lldiv_t = struct {
 | 
			
		||||
	Fquot int64
 | 
			
		||||
	Frem  int64
 | 
			
		||||
} /* stdlib.h:727:61 */
 | 
			
		||||
 | 
			
		||||
// *
 | 
			
		||||
// This file has no copyright assigned and is placed in the Public Domain.
 | 
			
		||||
// This file is part of the mingw-w64 runtime package.
 | 
			
		||||
// No warranty is given; refer to the file DISCLAIMER.PD within this package.
 | 
			
		||||
 | 
			
		||||
// *
 | 
			
		||||
// This file has no copyright assigned and is placed in the Public Domain.
 | 
			
		||||
// This file is part of the mingw-w64 runtime package.
 | 
			
		||||
// No warranty is given; refer to the file DISCLAIMER.PD within this package.
 | 
			
		||||
 | 
			
		||||
// Return codes for _heapwalk()
 | 
			
		||||
 | 
			
		||||
// Values for _heapinfo.useflag
 | 
			
		||||
 | 
			
		||||
// The structure used to walk through the heap with _heapwalk.
 | 
			
		||||
type X_heapinfo = struct {
 | 
			
		||||
	F_pentry  uintptr
 | 
			
		||||
	F_size    Size_t
 | 
			
		||||
	F_useflag int32
 | 
			
		||||
} /* malloc.h:46:11 */
 | 
			
		||||
 | 
			
		||||
// *
 | 
			
		||||
// This file has no copyright assigned and is placed in the Public Domain.
 | 
			
		||||
// This file is part of the mingw-w64 runtime package.
 | 
			
		||||
// No warranty is given; refer to the file DISCLAIMER.PD within this package.
 | 
			
		||||
 | 
			
		||||
// *
 | 
			
		||||
// This file has no copyright assigned and is placed in the Public Domain.
 | 
			
		||||
// This file is part of the mingw-w64 runtime package.
 | 
			
		||||
// No warranty is given; refer to the file DISCLAIMER.PD within this package.
 | 
			
		||||
 | 
			
		||||
// Return codes for _heapwalk()
 | 
			
		||||
 | 
			
		||||
// Values for _heapinfo.useflag
 | 
			
		||||
 | 
			
		||||
// The structure used to walk through the heap with _heapwalk.
 | 
			
		||||
type X_HEAPINFO = X_heapinfo /* malloc.h:50:5 */
 | 
			
		||||
 | 
			
		||||
var _ int8 /* gen.c:2:13: */
 | 
			
		||||
							
								
								
									
										548
									
								
								vendor/modernc.org/libc/stdlib/stdlib_windows_amd64.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										548
									
								
								vendor/modernc.org/libc/stdlib/stdlib_windows_amd64.go
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,548 @@
 | 
			
		||||
// Code generated by 'ccgo stdlib\gen.c -crt-import-path "" -export-defines "" -export-enums "" -export-externs X -export-fields F -export-structs "" -export-typedefs "" -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o stdlib\stdlib_windows_amd64.go -pkgname stdlib', DO NOT EDIT.
 | 
			
		||||
 | 
			
		||||
package stdlib
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"math"
 | 
			
		||||
	"reflect"
 | 
			
		||||
	"sync/atomic"
 | 
			
		||||
	"unsafe"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
var _ = math.Pi
 | 
			
		||||
var _ reflect.Kind
 | 
			
		||||
var _ atomic.Value
 | 
			
		||||
var _ unsafe.Pointer
 | 
			
		||||
 | 
			
		||||
const (
 | 
			
		||||
	CHAR_BIT                                        = 8
 | 
			
		||||
	CHAR_MAX                                        = 127
 | 
			
		||||
	CHAR_MIN                                        = -128
 | 
			
		||||
	DUMMYSTRUCTNAME                                 = 0
 | 
			
		||||
	DUMMYSTRUCTNAME1                                = 0
 | 
			
		||||
	DUMMYSTRUCTNAME2                                = 0
 | 
			
		||||
	DUMMYSTRUCTNAME3                                = 0
 | 
			
		||||
	DUMMYSTRUCTNAME4                                = 0
 | 
			
		||||
	DUMMYSTRUCTNAME5                                = 0
 | 
			
		||||
	DUMMYUNIONNAME                                  = 0
 | 
			
		||||
	DUMMYUNIONNAME1                                 = 0
 | 
			
		||||
	DUMMYUNIONNAME2                                 = 0
 | 
			
		||||
	DUMMYUNIONNAME3                                 = 0
 | 
			
		||||
	DUMMYUNIONNAME4                                 = 0
 | 
			
		||||
	DUMMYUNIONNAME5                                 = 0
 | 
			
		||||
	DUMMYUNIONNAME6                                 = 0
 | 
			
		||||
	DUMMYUNIONNAME7                                 = 0
 | 
			
		||||
	DUMMYUNIONNAME8                                 = 0
 | 
			
		||||
	DUMMYUNIONNAME9                                 = 0
 | 
			
		||||
	EXIT_FAILURE                                    = 1
 | 
			
		||||
	EXIT_SUCCESS                                    = 0
 | 
			
		||||
	INT_MAX                                         = 2147483647
 | 
			
		||||
	INT_MIN                                         = -2147483648
 | 
			
		||||
	LLONG_MAX                                       = 9223372036854775807
 | 
			
		||||
	LLONG_MIN                                       = -9223372036854775808
 | 
			
		||||
	LONG_LONG_MAX                                   = 9223372036854775807
 | 
			
		||||
	LONG_LONG_MIN                                   = -9223372036854775808
 | 
			
		||||
	LONG_MAX                                        = 2147483647
 | 
			
		||||
	LONG_MIN                                        = -2147483648
 | 
			
		||||
	MB_LEN_MAX                                      = 5
 | 
			
		||||
	MINGW_DDK_H                                     = 0
 | 
			
		||||
	MINGW_DDRAW_VERSION                             = 7
 | 
			
		||||
	MINGW_HAS_DDK_H                                 = 1
 | 
			
		||||
	MINGW_HAS_DDRAW_H                               = 1
 | 
			
		||||
	MINGW_HAS_SECURE_API                            = 1
 | 
			
		||||
	MINGW_SDK_INIT                                  = 0
 | 
			
		||||
	PATH_MAX                                        = 260
 | 
			
		||||
	RAND_MAX                                        = 0x7fff
 | 
			
		||||
	SCHAR_MAX                                       = 127
 | 
			
		||||
	SCHAR_MIN                                       = -128
 | 
			
		||||
	SHRT_MAX                                        = 32767
 | 
			
		||||
	SHRT_MIN                                        = -32768
 | 
			
		||||
	SIZE_MAX                                        = 18446744073709551615
 | 
			
		||||
	SSIZE_MAX                                       = 9223372036854775807
 | 
			
		||||
	UCHAR_MAX                                       = 255
 | 
			
		||||
	UINT_MAX                                        = 4294967295
 | 
			
		||||
	ULLONG_MAX                                      = 18446744073709551615
 | 
			
		||||
	ULONG_LONG_MAX                                  = 18446744073709551615
 | 
			
		||||
	ULONG_MAX                                       = 4294967295
 | 
			
		||||
	UNALIGNED                                       = 0
 | 
			
		||||
	USE___UUIDOF                                    = 0
 | 
			
		||||
	USHRT_MAX                                       = 65535
 | 
			
		||||
	WIN32                                           = 1
 | 
			
		||||
	WIN64                                           = 1
 | 
			
		||||
	WINNT                                           = 1
 | 
			
		||||
	X_AGLOBAL                                       = 0
 | 
			
		||||
	X_ALLOCA_S_HEAP_MARKER                          = 0xDDDD
 | 
			
		||||
	X_ALLOCA_S_MARKER_SIZE                          = 16
 | 
			
		||||
	X_ALLOCA_S_STACK_MARKER                         = 0xCCCC
 | 
			
		||||
	X_ALLOCA_S_THRESHOLD                            = 1024
 | 
			
		||||
	X_ANONYMOUS_STRUCT                              = 0
 | 
			
		||||
	X_ANONYMOUS_UNION                               = 0
 | 
			
		||||
	X_ARGMAX                                        = 100
 | 
			
		||||
	X_CALL_REPORTFAULT                              = 0x2
 | 
			
		||||
	X_CONST_RETURN                                  = 0
 | 
			
		||||
	X_CRTNOALIAS                                    = 0
 | 
			
		||||
	X_CRTRESTRICT                                   = 0
 | 
			
		||||
	X_CRT_ABS_DEFINED                               = 0
 | 
			
		||||
	X_CRT_ALGO_DEFINED                              = 0
 | 
			
		||||
	X_CRT_ALLOCATION_DEFINED                        = 0
 | 
			
		||||
	X_CRT_ALTERNATIVE_IMPORTED                      = 0
 | 
			
		||||
	X_CRT_ATOF_DEFINED                              = 0
 | 
			
		||||
	X_CRT_DOUBLE_DEC                                = 0
 | 
			
		||||
	X_CRT_ERRNO_DEFINED                             = 0
 | 
			
		||||
	X_CRT_MANAGED_HEAP_DEPRECATE                    = 0
 | 
			
		||||
	X_CRT_PACKING                                   = 8
 | 
			
		||||
	X_CRT_PERROR_DEFINED                            = 0
 | 
			
		||||
	X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES          = 0
 | 
			
		||||
	X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY   = 0
 | 
			
		||||
	X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES        = 0
 | 
			
		||||
	X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT  = 0
 | 
			
		||||
	X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY = 0
 | 
			
		||||
	X_CRT_SWAB_DEFINED                              = 0
 | 
			
		||||
	X_CRT_SYSTEM_DEFINED                            = 0
 | 
			
		||||
	X_CRT_TERMINATE_DEFINED                         = 0
 | 
			
		||||
	X_CRT_WPERROR_DEFINED                           = 0
 | 
			
		||||
	X_CRT_WSYSTEM_DEFINED                           = 0
 | 
			
		||||
	X_CVTBUFSIZE                                    = 349
 | 
			
		||||
	X_DIV_T_DEFINED                                 = 0
 | 
			
		||||
	X_DLL                                           = 0
 | 
			
		||||
	X_ERRCODE_DEFINED                               = 0
 | 
			
		||||
	X_FILE_OFFSET_BITS                              = 64
 | 
			
		||||
	X_FREEA_INLINE                                  = 0
 | 
			
		||||
	X_FREEENTRY                                     = 0
 | 
			
		||||
	X_GCC_LIMITS_H_                                 = 0
 | 
			
		||||
	X_HEAPBADBEGIN                                  = -3
 | 
			
		||||
	X_HEAPBADNODE                                   = -4
 | 
			
		||||
	X_HEAPBADPTR                                    = -6
 | 
			
		||||
	X_HEAPEMPTY                                     = -1
 | 
			
		||||
	X_HEAPEND                                       = -5
 | 
			
		||||
	X_HEAPINFO_DEFINED                              = 0
 | 
			
		||||
	X_HEAPOK                                        = -2
 | 
			
		||||
	X_HEAP_MAXREQ                                   = 0xFFFFFFFFFFFFFFE0
 | 
			
		||||
	X_I16_MAX                                       = 32767
 | 
			
		||||
	X_I16_MIN                                       = -32768
 | 
			
		||||
	X_I32_MAX                                       = 2147483647
 | 
			
		||||
	X_I32_MIN                                       = -2147483648
 | 
			
		||||
	X_I64_MAX                                       = 9223372036854775807
 | 
			
		||||
	X_I64_MIN                                       = -9223372036854775808
 | 
			
		||||
	X_I8_MAX                                        = 127
 | 
			
		||||
	X_I8_MIN                                        = -128
 | 
			
		||||
	X_INC_CRTDEFS                                   = 0
 | 
			
		||||
	X_INC_CRTDEFS_MACRO                             = 0
 | 
			
		||||
	X_INC_LIMITS                                    = 0
 | 
			
		||||
	X_INC_MINGW_SECAPI                              = 0
 | 
			
		||||
	X_INC_STDLIB                                    = 0
 | 
			
		||||
	X_INC_STDLIB_S                                  = 0
 | 
			
		||||
	X_INC_VADEFS                                    = 0
 | 
			
		||||
	X_INC__MINGW_H                                  = 0
 | 
			
		||||
	X_INT128_DEFINED                                = 0
 | 
			
		||||
	X_INTEGRAL_MAX_BITS                             = 64
 | 
			
		||||
	X_INTPTR_T_DEFINED                              = 0
 | 
			
		||||
	X_LIMITS_H___                                   = 0
 | 
			
		||||
	X_MALLOC_H_                                     = 0
 | 
			
		||||
	X_MAX_DIR                                       = 256
 | 
			
		||||
	X_MAX_DRIVE                                     = 3
 | 
			
		||||
	X_MAX_ENV                                       = 32767
 | 
			
		||||
	X_MAX_EXT                                       = 256
 | 
			
		||||
	X_MAX_FNAME                                     = 256
 | 
			
		||||
	X_MAX_PATH                                      = 260
 | 
			
		||||
	X_MAX_WAIT_MALLOC_CRT                           = 60000
 | 
			
		||||
	X_MM_MALLOC_H_INCLUDED                          = 0
 | 
			
		||||
	X_MT                                            = 0
 | 
			
		||||
	X_M_AMD64                                       = 100
 | 
			
		||||
	X_M_X64                                         = 100
 | 
			
		||||
	X_ONEXIT_T_DEFINED                              = 0
 | 
			
		||||
	X_OUT_TO_DEFAULT                                = 0
 | 
			
		||||
	X_OUT_TO_MSGBOX                                 = 2
 | 
			
		||||
	X_OUT_TO_STDERR                                 = 1
 | 
			
		||||
	X_PGLOBAL                                       = 0
 | 
			
		||||
	X_PTRDIFF_T_                                    = 0
 | 
			
		||||
	X_PTRDIFF_T_DEFINED                             = 0
 | 
			
		||||
	X_QSORT_S_DEFINED                               = 0
 | 
			
		||||
	X_REENTRANT                                     = 1
 | 
			
		||||
	X_REPORT_ERRMODE                                = 3
 | 
			
		||||
	X_RSIZE_T_DEFINED                               = 0
 | 
			
		||||
	X_SECURECRT_FILL_BUFFER_PATTERN                 = 0xFD
 | 
			
		||||
	X_SIZE_T_DEFINED                                = 0
 | 
			
		||||
	X_SSIZE_T_DEFINED                               = 0
 | 
			
		||||
	X_TAGLC_ID_DEFINED                              = 0
 | 
			
		||||
	X_THREADLOCALEINFO                              = 0
 | 
			
		||||
	X_TIME32_T_DEFINED                              = 0
 | 
			
		||||
	X_TIME64_T_DEFINED                              = 0
 | 
			
		||||
	X_TIME_T_DEFINED                                = 0
 | 
			
		||||
	X_UI16_MAX                                      = 0xffff
 | 
			
		||||
	X_UI32_MAX                                      = 0xffffffff
 | 
			
		||||
	X_UI64_MAX                                      = 0xffffffffffffffff
 | 
			
		||||
	X_UI8_MAX                                       = 0xff
 | 
			
		||||
	X_UINTPTR_T_DEFINED                             = 0
 | 
			
		||||
	X_USEDENTRY                                     = 1
 | 
			
		||||
	X_VA_LIST_DEFINED                               = 0
 | 
			
		||||
	X_W64                                           = 0
 | 
			
		||||
	X_WCHAR_T_DEFINED                               = 0
 | 
			
		||||
	X_WCTYPE_T_DEFINED                              = 0
 | 
			
		||||
	X_WIN32                                         = 1
 | 
			
		||||
	X_WIN32_WINNT                                   = 0x502
 | 
			
		||||
	X_WIN64                                         = 1
 | 
			
		||||
	X_WINT_T                                        = 0
 | 
			
		||||
	X_WRITE_ABORT_MSG                               = 0x1
 | 
			
		||||
	X_WSTDLIBP_DEFINED                              = 0
 | 
			
		||||
	X_WSTDLIBP_S_DEFINED                            = 0
 | 
			
		||||
	X_WSTDLIB_DEFINED                               = 0
 | 
			
		||||
	X_WSTDLIB_S_DEFINED                             = 0
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
type Ptrdiff_t = int64 /* <builtin>:3:26 */
 | 
			
		||||
 | 
			
		||||
type Size_t = uint64 /* <builtin>:9:23 */
 | 
			
		||||
 | 
			
		||||
type Wchar_t = uint16 /* <builtin>:15:24 */
 | 
			
		||||
 | 
			
		||||
type X__int128_t = struct {
 | 
			
		||||
	Flo int64
 | 
			
		||||
	Fhi int64
 | 
			
		||||
} /* <builtin>:21:43 */ // must match modernc.org/mathutil.Int128
 | 
			
		||||
type X__uint128_t = struct {
 | 
			
		||||
	Flo uint64
 | 
			
		||||
	Fhi uint64
 | 
			
		||||
} /* <builtin>:22:44 */ // must match modernc.org/mathutil.Int128
 | 
			
		||||
 | 
			
		||||
type X__builtin_va_list = uintptr /* <builtin>:46:14 */
 | 
			
		||||
type X__float128 = float64        /* <builtin>:47:21 */
 | 
			
		||||
 | 
			
		||||
type Va_list = X__builtin_va_list /* <builtin>:50:27 */
 | 
			
		||||
 | 
			
		||||
// *
 | 
			
		||||
// This file has no copyright assigned and is placed in the Public Domain.
 | 
			
		||||
// This file is part of the mingw-w64 runtime package.
 | 
			
		||||
// No warranty is given; refer to the file DISCLAIMER.PD within this package.
 | 
			
		||||
 | 
			
		||||
// *
 | 
			
		||||
// This file has no copyright assigned and is placed in the Public Domain.
 | 
			
		||||
// This file is part of the mingw-w64 runtime package.
 | 
			
		||||
// No warranty is given; refer to the file DISCLAIMER.PD within this package.
 | 
			
		||||
 | 
			
		||||
// *
 | 
			
		||||
// This file has no copyright assigned and is placed in the Public Domain.
 | 
			
		||||
// This file is part of the mingw-w64 runtime package.
 | 
			
		||||
// No warranty is given; refer to the file DISCLAIMER.PD within this package.
 | 
			
		||||
 | 
			
		||||
// *
 | 
			
		||||
// This file has no copyright assigned and is placed in the Public Domain.
 | 
			
		||||
// This file is part of the mingw-w64 runtime package.
 | 
			
		||||
// No warranty is given; refer to the file DISCLAIMER.PD within this package.
 | 
			
		||||
 | 
			
		||||
// This macro holds an monotonic increasing value, which indicates
 | 
			
		||||
//    a specific fix/patch is present on trunk.  This value isn't related to
 | 
			
		||||
//    minor/major version-macros.  It is increased on demand, if a big
 | 
			
		||||
//    fix was applied to trunk.  This macro gets just increased on trunk.  For
 | 
			
		||||
//    other branches its value won't be modified.
 | 
			
		||||
 | 
			
		||||
// mingw.org's version macros: these make gcc to define
 | 
			
		||||
//    MINGW32_SUPPORTS_MT_EH and to use the _CRT_MT global
 | 
			
		||||
//    and the __mingwthr_key_dtor() function from the MinGW
 | 
			
		||||
//    CRT in its private gthr-win32.h header.
 | 
			
		||||
 | 
			
		||||
// Set VC specific compiler target macros.
 | 
			
		||||
 | 
			
		||||
// MS does not prefix symbols by underscores for 64-bit.
 | 
			
		||||
// As we have to support older gcc version, which are using underscores
 | 
			
		||||
//       as symbol prefix for x64, we have to check here for the user label
 | 
			
		||||
//       prefix defined by gcc.
 | 
			
		||||
 | 
			
		||||
// Special case nameless struct/union.
 | 
			
		||||
 | 
			
		||||
// MinGW-w64 has some additional C99 printf/scanf feature support.
 | 
			
		||||
//    So we add some helper macros to ease recognition of them.
 | 
			
		||||
 | 
			
		||||
// *
 | 
			
		||||
// This file has no copyright assigned and is placed in the Public Domain.
 | 
			
		||||
// This file is part of the mingw-w64 runtime package.
 | 
			
		||||
// No warranty is given; refer to the file DISCLAIMER.PD within this package.
 | 
			
		||||
 | 
			
		||||
// http://msdn.microsoft.com/en-us/library/ms175759%28v=VS.100%29.aspx
 | 
			
		||||
// Templates won't work in C, will break if secure API is not enabled, disabled
 | 
			
		||||
 | 
			
		||||
// https://blogs.msdn.com/b/sdl/archive/2010/02/16/vc-2010-and-memcpy.aspx?Redirected=true
 | 
			
		||||
// fallback on default implementation if we can't know the size of the destination
 | 
			
		||||
 | 
			
		||||
// Include _cygwin.h if we're building a Cygwin application.
 | 
			
		||||
 | 
			
		||||
// Target specific macro replacement for type "long".  In the Windows API,
 | 
			
		||||
//    the type long is always 32 bit, even if the target is 64 bit (LLP64).
 | 
			
		||||
//    On 64 bit Cygwin, the type long is 64 bit (LP64).  So, to get the right
 | 
			
		||||
//    sized definitions and declarations, all usage of type long in the Windows
 | 
			
		||||
//    headers have to be replaced by the below defined macro __LONG32.
 | 
			
		||||
 | 
			
		||||
// C/C++ specific language defines.
 | 
			
		||||
 | 
			
		||||
// Note the extern. This is needed to work around GCC's
 | 
			
		||||
// limitations in handling dllimport attribute.
 | 
			
		||||
 | 
			
		||||
// Attribute `nonnull' was valid as of gcc 3.3.  We don't use GCC's
 | 
			
		||||
//    variadiac macro facility, because variadic macros cause syntax
 | 
			
		||||
//    errors with  --traditional-cpp.
 | 
			
		||||
 | 
			
		||||
//  High byte is the major version, low byte is the minor.
 | 
			
		||||
 | 
			
		||||
// *
 | 
			
		||||
// This file has no copyright assigned and is placed in the Public Domain.
 | 
			
		||||
// This file is part of the mingw-w64 runtime package.
 | 
			
		||||
// No warranty is given; refer to the file DISCLAIMER.PD within this package.
 | 
			
		||||
 | 
			
		||||
// *
 | 
			
		||||
// This file has no copyright assigned and is placed in the Public Domain.
 | 
			
		||||
// This file is part of the mingw-w64 runtime package.
 | 
			
		||||
// No warranty is given; refer to the file DISCLAIMER.PD within this package.
 | 
			
		||||
 | 
			
		||||
type X__gnuc_va_list = X__builtin_va_list /* vadefs.h:24:29 */
 | 
			
		||||
 | 
			
		||||
type Ssize_t = int64 /* crtdefs.h:45:35 */
 | 
			
		||||
 | 
			
		||||
type Rsize_t = Size_t /* crtdefs.h:52:16 */
 | 
			
		||||
 | 
			
		||||
type Intptr_t = int64 /* crtdefs.h:62:35 */
 | 
			
		||||
 | 
			
		||||
type Uintptr_t = uint64 /* crtdefs.h:75:44 */
 | 
			
		||||
 | 
			
		||||
type Wint_t = uint16   /* crtdefs.h:106:24 */
 | 
			
		||||
type Wctype_t = uint16 /* crtdefs.h:107:24 */
 | 
			
		||||
 | 
			
		||||
type Errno_t = int32 /* crtdefs.h:113:13 */
 | 
			
		||||
 | 
			
		||||
type X__time32_t = int32 /* crtdefs.h:118:14 */
 | 
			
		||||
 | 
			
		||||
type X__time64_t = int64 /* crtdefs.h:123:35 */
 | 
			
		||||
 | 
			
		||||
type Time_t = X__time64_t /* crtdefs.h:138:20 */
 | 
			
		||||
 | 
			
		||||
type Threadlocaleinfostruct = struct {
 | 
			
		||||
	Frefcount      int32
 | 
			
		||||
	Flc_codepage   uint32
 | 
			
		||||
	Flc_collate_cp uint32
 | 
			
		||||
	Flc_handle     [6]uint32
 | 
			
		||||
	Flc_id         [6]LC_ID
 | 
			
		||||
	Flc_category   [6]struct {
 | 
			
		||||
		Flocale    uintptr
 | 
			
		||||
		Fwlocale   uintptr
 | 
			
		||||
		Frefcount  uintptr
 | 
			
		||||
		Fwrefcount uintptr
 | 
			
		||||
	}
 | 
			
		||||
	Flc_clike            int32
 | 
			
		||||
	Fmb_cur_max          int32
 | 
			
		||||
	Flconv_intl_refcount uintptr
 | 
			
		||||
	Flconv_num_refcount  uintptr
 | 
			
		||||
	Flconv_mon_refcount  uintptr
 | 
			
		||||
	Flconv               uintptr
 | 
			
		||||
	Fctype1_refcount     uintptr
 | 
			
		||||
	Fctype1              uintptr
 | 
			
		||||
	Fpctype              uintptr
 | 
			
		||||
	Fpclmap              uintptr
 | 
			
		||||
	Fpcumap              uintptr
 | 
			
		||||
	Flc_time_curr        uintptr
 | 
			
		||||
} /* crtdefs.h:422:1 */
 | 
			
		||||
 | 
			
		||||
type Pthreadlocinfo = uintptr /* crtdefs.h:424:39 */
 | 
			
		||||
type Pthreadmbcinfo = uintptr /* crtdefs.h:425:36 */
 | 
			
		||||
 | 
			
		||||
type Localeinfo_struct = struct {
 | 
			
		||||
	Flocinfo Pthreadlocinfo
 | 
			
		||||
	Fmbcinfo Pthreadmbcinfo
 | 
			
		||||
} /* crtdefs.h:428:9 */
 | 
			
		||||
 | 
			
		||||
type X_locale_tstruct = Localeinfo_struct /* crtdefs.h:431:3 */
 | 
			
		||||
type X_locale_t = uintptr                 /* crtdefs.h:431:19 */
 | 
			
		||||
 | 
			
		||||
type TagLC_ID = struct {
 | 
			
		||||
	FwLanguage uint16
 | 
			
		||||
	FwCountry  uint16
 | 
			
		||||
	FwCodePage uint16
 | 
			
		||||
} /* crtdefs.h:422:1 */
 | 
			
		||||
 | 
			
		||||
type LC_ID = TagLC_ID  /* crtdefs.h:439:3 */
 | 
			
		||||
type LPLC_ID = uintptr /* crtdefs.h:439:9 */
 | 
			
		||||
 | 
			
		||||
type Threadlocinfo = Threadlocaleinfostruct /* crtdefs.h:468:3 */
 | 
			
		||||
 | 
			
		||||
// Copyright (C) 1992-2018 Free Software Foundation, Inc.
 | 
			
		||||
//
 | 
			
		||||
// This file is part of GCC.
 | 
			
		||||
//
 | 
			
		||||
// GCC is free software; you can redistribute it and/or modify it under
 | 
			
		||||
// the terms of the GNU General Public License as published by the Free
 | 
			
		||||
// Software Foundation; either version 3, or (at your option) any later
 | 
			
		||||
// version.
 | 
			
		||||
//
 | 
			
		||||
// GCC is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
// WARRANTY; without even the implied warranty of MERCHANTABILITY or
 | 
			
		||||
// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
 | 
			
		||||
// for more details.
 | 
			
		||||
//
 | 
			
		||||
// Under Section 7 of GPL version 3, you are granted additional
 | 
			
		||||
// permissions described in the GCC Runtime Library Exception, version
 | 
			
		||||
// 3.1, as published by the Free Software Foundation.
 | 
			
		||||
//
 | 
			
		||||
// You should have received a copy of the GNU General Public License and
 | 
			
		||||
// a copy of the GCC Runtime Library Exception along with this program;
 | 
			
		||||
// see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
 | 
			
		||||
// <http://www.gnu.org/licenses/>.
 | 
			
		||||
 | 
			
		||||
// This administrivia gets added to the beginning of limits.h
 | 
			
		||||
//    if the system has its own version of limits.h.
 | 
			
		||||
 | 
			
		||||
// We use _GCC_LIMITS_H_ because we want this not to match
 | 
			
		||||
//    any macros that the system's limits.h uses for its own purposes.
 | 
			
		||||
 | 
			
		||||
// Use "..." so that we find syslimits.h only in this same directory.
 | 
			
		||||
// syslimits.h stands for the system's own limits.h file.
 | 
			
		||||
//    If we can use it ok unmodified, then we install this text.
 | 
			
		||||
//    If fixincludes fixes it, then the fixed version is installed
 | 
			
		||||
//    instead of this text.
 | 
			
		||||
 | 
			
		||||
// *
 | 
			
		||||
// This file has no copyright assigned and is placed in the Public Domain.
 | 
			
		||||
// This file is part of the mingw-w64 runtime package.
 | 
			
		||||
// No warranty is given; refer to the file DISCLAIMER.PD within this package.
 | 
			
		||||
// *
 | 
			
		||||
// This file has no copyright assigned and is placed in the Public Domain.
 | 
			
		||||
// This file is part of the mingw-w64 runtime package.
 | 
			
		||||
// No warranty is given; refer to the file DISCLAIMER.PD within this package.
 | 
			
		||||
 | 
			
		||||
// File system limits
 | 
			
		||||
//
 | 
			
		||||
// NOTE: Apparently the actual size of PATH_MAX is 260, but a space is
 | 
			
		||||
//       required for the NUL. TODO: Test?
 | 
			
		||||
// NOTE: PATH_MAX is the POSIX equivalent for Microsoft's MAX_PATH; the two
 | 
			
		||||
//       are semantically identical, with a limit of 259 characters for the
 | 
			
		||||
//       path name, plus one for a terminating NUL, for a total of 260.
 | 
			
		||||
 | 
			
		||||
// Copyright (C) 1991-2018 Free Software Foundation, Inc.
 | 
			
		||||
//
 | 
			
		||||
// This file is part of GCC.
 | 
			
		||||
//
 | 
			
		||||
// GCC is free software; you can redistribute it and/or modify it under
 | 
			
		||||
// the terms of the GNU General Public License as published by the Free
 | 
			
		||||
// Software Foundation; either version 3, or (at your option) any later
 | 
			
		||||
// version.
 | 
			
		||||
//
 | 
			
		||||
// GCC is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
// WARRANTY; without even the implied warranty of MERCHANTABILITY or
 | 
			
		||||
// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
 | 
			
		||||
// for more details.
 | 
			
		||||
//
 | 
			
		||||
// Under Section 7 of GPL version 3, you are granted additional
 | 
			
		||||
// permissions described in the GCC Runtime Library Exception, version
 | 
			
		||||
// 3.1, as published by the Free Software Foundation.
 | 
			
		||||
//
 | 
			
		||||
// You should have received a copy of the GNU General Public License and
 | 
			
		||||
// a copy of the GCC Runtime Library Exception along with this program;
 | 
			
		||||
// see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
 | 
			
		||||
// <http://www.gnu.org/licenses/>.
 | 
			
		||||
 | 
			
		||||
// Number of bits in a `char'.
 | 
			
		||||
 | 
			
		||||
// Maximum length of a multibyte character.
 | 
			
		||||
 | 
			
		||||
// Minimum and maximum values a `signed char' can hold.
 | 
			
		||||
 | 
			
		||||
// Maximum value an `unsigned char' can hold.  (Minimum is 0).
 | 
			
		||||
 | 
			
		||||
// Minimum and maximum values a `char' can hold.
 | 
			
		||||
 | 
			
		||||
// Minimum and maximum values a `signed short int' can hold.
 | 
			
		||||
 | 
			
		||||
// Maximum value an `unsigned short int' can hold.  (Minimum is 0).
 | 
			
		||||
 | 
			
		||||
// Minimum and maximum values a `signed int' can hold.
 | 
			
		||||
 | 
			
		||||
// Maximum value an `unsigned int' can hold.  (Minimum is 0).
 | 
			
		||||
 | 
			
		||||
// Minimum and maximum values a `signed long int' can hold.
 | 
			
		||||
//    (Same as `int').
 | 
			
		||||
 | 
			
		||||
// Maximum value an `unsigned long int' can hold.  (Minimum is 0).
 | 
			
		||||
 | 
			
		||||
// Minimum and maximum values a `signed long long int' can hold.
 | 
			
		||||
 | 
			
		||||
// Maximum value an `unsigned long long int' can hold.  (Minimum is 0).
 | 
			
		||||
 | 
			
		||||
// Minimum and maximum values a `signed long long int' can hold.
 | 
			
		||||
 | 
			
		||||
// Maximum value an `unsigned long long int' can hold.  (Minimum is 0).
 | 
			
		||||
 | 
			
		||||
// This administrivia gets added to the end of limits.h
 | 
			
		||||
//    if the system has its own version of limits.h.
 | 
			
		||||
 | 
			
		||||
type X_onexit_t = uintptr /* stdlib.h:49:15 */
 | 
			
		||||
 | 
			
		||||
type X_div_t = struct {
 | 
			
		||||
	Fquot int32
 | 
			
		||||
	Frem  int32
 | 
			
		||||
} /* stdlib.h:59:11 */
 | 
			
		||||
 | 
			
		||||
type Div_t = X_div_t /* stdlib.h:62:5 */
 | 
			
		||||
 | 
			
		||||
type X_ldiv_t = struct {
 | 
			
		||||
	Fquot int32
 | 
			
		||||
	Frem  int32
 | 
			
		||||
} /* stdlib.h:64:11 */
 | 
			
		||||
 | 
			
		||||
type Ldiv_t = X_ldiv_t /* stdlib.h:67:5 */
 | 
			
		||||
 | 
			
		||||
type X_LDOUBLE = struct{ Fld [10]uint8 } /* stdlib.h:76:5 */
 | 
			
		||||
 | 
			
		||||
type X_CRT_DOUBLE = struct{ Fx float64 } /* stdlib.h:83:5 */
 | 
			
		||||
 | 
			
		||||
type X_CRT_FLOAT = struct{ Ff float32 } /* stdlib.h:87:5 */
 | 
			
		||||
 | 
			
		||||
type X_LONGDOUBLE = struct{ Fx float64 } /* stdlib.h:94:5 */
 | 
			
		||||
 | 
			
		||||
type X_LDBL12 = struct{ Fld12 [12]uint8 } /* stdlib.h:101:5 */
 | 
			
		||||
 | 
			
		||||
type X_purecall_handler = uintptr /* stdlib.h:142:16 */
 | 
			
		||||
 | 
			
		||||
type X_invalid_parameter_handler = uintptr /* stdlib.h:147:16 */
 | 
			
		||||
 | 
			
		||||
type Lldiv_t = struct {
 | 
			
		||||
	Fquot int64
 | 
			
		||||
	Frem  int64
 | 
			
		||||
} /* stdlib.h:699:61 */
 | 
			
		||||
 | 
			
		||||
// *
 | 
			
		||||
// This file has no copyright assigned and is placed in the Public Domain.
 | 
			
		||||
// This file is part of the mingw-w64 runtime package.
 | 
			
		||||
// No warranty is given; refer to the file DISCLAIMER.PD within this package.
 | 
			
		||||
 | 
			
		||||
// *
 | 
			
		||||
// This file has no copyright assigned and is placed in the Public Domain.
 | 
			
		||||
// This file is part of the mingw-w64 runtime package.
 | 
			
		||||
// No warranty is given; refer to the file DISCLAIMER.PD within this package.
 | 
			
		||||
 | 
			
		||||
// Return codes for _heapwalk()
 | 
			
		||||
 | 
			
		||||
// Values for _heapinfo.useflag
 | 
			
		||||
 | 
			
		||||
// The structure used to walk through the heap with _heapwalk.
 | 
			
		||||
type X_heapinfo = struct {
 | 
			
		||||
	F_pentry     uintptr
 | 
			
		||||
	F_size       Size_t
 | 
			
		||||
	F_useflag    int32
 | 
			
		||||
	F__ccgo_pad1 [4]byte
 | 
			
		||||
} /* malloc.h:46:11 */
 | 
			
		||||
 | 
			
		||||
// *
 | 
			
		||||
// This file has no copyright assigned and is placed in the Public Domain.
 | 
			
		||||
// This file is part of the mingw-w64 runtime package.
 | 
			
		||||
// No warranty is given; refer to the file DISCLAIMER.PD within this package.
 | 
			
		||||
 | 
			
		||||
// *
 | 
			
		||||
// This file has no copyright assigned and is placed in the Public Domain.
 | 
			
		||||
// This file is part of the mingw-w64 runtime package.
 | 
			
		||||
// No warranty is given; refer to the file DISCLAIMER.PD within this package.
 | 
			
		||||
 | 
			
		||||
// Return codes for _heapwalk()
 | 
			
		||||
 | 
			
		||||
// Values for _heapinfo.useflag
 | 
			
		||||
 | 
			
		||||
// The structure used to walk through the heap with _heapwalk.
 | 
			
		||||
type X_HEAPINFO = X_heapinfo /* malloc.h:50:5 */
 | 
			
		||||
 | 
			
		||||
var _ int8 /* gen.c:2:13: */
 | 
			
		||||
		Reference in New Issue
	
	Block a user