stdlib_windows_amd64.go (22540B)
1 // 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. 2 3 package stdlib 4 5 import ( 6 "math" 7 "reflect" 8 "sync/atomic" 9 "unsafe" 10 ) 11 12 var _ = math.Pi 13 var _ reflect.Kind 14 var _ atomic.Value 15 var _ unsafe.Pointer 16 17 const ( 18 CHAR_BIT = 8 19 CHAR_MAX = 127 20 CHAR_MIN = -128 21 DUMMYSTRUCTNAME = 0 22 DUMMYSTRUCTNAME1 = 0 23 DUMMYSTRUCTNAME2 = 0 24 DUMMYSTRUCTNAME3 = 0 25 DUMMYSTRUCTNAME4 = 0 26 DUMMYSTRUCTNAME5 = 0 27 DUMMYUNIONNAME = 0 28 DUMMYUNIONNAME1 = 0 29 DUMMYUNIONNAME2 = 0 30 DUMMYUNIONNAME3 = 0 31 DUMMYUNIONNAME4 = 0 32 DUMMYUNIONNAME5 = 0 33 DUMMYUNIONNAME6 = 0 34 DUMMYUNIONNAME7 = 0 35 DUMMYUNIONNAME8 = 0 36 DUMMYUNIONNAME9 = 0 37 EXIT_FAILURE = 1 38 EXIT_SUCCESS = 0 39 INT_MAX = 2147483647 40 INT_MIN = -2147483648 41 LLONG_MAX = 9223372036854775807 42 LLONG_MIN = -9223372036854775808 43 LONG_LONG_MAX = 9223372036854775807 44 LONG_LONG_MIN = -9223372036854775808 45 LONG_MAX = 2147483647 46 LONG_MIN = -2147483648 47 MB_LEN_MAX = 5 48 MINGW_DDK_H = 0 49 MINGW_DDRAW_VERSION = 7 50 MINGW_HAS_DDK_H = 1 51 MINGW_HAS_DDRAW_H = 1 52 MINGW_HAS_SECURE_API = 1 53 MINGW_SDK_INIT = 0 54 PATH_MAX = 260 55 RAND_MAX = 0x7fff 56 SCHAR_MAX = 127 57 SCHAR_MIN = -128 58 SHRT_MAX = 32767 59 SHRT_MIN = -32768 60 SIZE_MAX = 18446744073709551615 61 SSIZE_MAX = 9223372036854775807 62 UCHAR_MAX = 255 63 UINT_MAX = 4294967295 64 ULLONG_MAX = 18446744073709551615 65 ULONG_LONG_MAX = 18446744073709551615 66 ULONG_MAX = 4294967295 67 UNALIGNED = 0 68 USE___UUIDOF = 0 69 USHRT_MAX = 65535 70 WIN32 = 1 71 WIN64 = 1 72 WINNT = 1 73 X_AGLOBAL = 0 74 X_ALLOCA_S_HEAP_MARKER = 0xDDDD 75 X_ALLOCA_S_MARKER_SIZE = 16 76 X_ALLOCA_S_STACK_MARKER = 0xCCCC 77 X_ALLOCA_S_THRESHOLD = 1024 78 X_ANONYMOUS_STRUCT = 0 79 X_ANONYMOUS_UNION = 0 80 X_ARGMAX = 100 81 X_CALL_REPORTFAULT = 0x2 82 X_CONST_RETURN = 0 83 X_CRTNOALIAS = 0 84 X_CRTRESTRICT = 0 85 X_CRT_ABS_DEFINED = 0 86 X_CRT_ALGO_DEFINED = 0 87 X_CRT_ALLOCATION_DEFINED = 0 88 X_CRT_ALTERNATIVE_IMPORTED = 0 89 X_CRT_ATOF_DEFINED = 0 90 X_CRT_DOUBLE_DEC = 0 91 X_CRT_ERRNO_DEFINED = 0 92 X_CRT_MANAGED_HEAP_DEPRECATE = 0 93 X_CRT_PACKING = 8 94 X_CRT_PERROR_DEFINED = 0 95 X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES = 0 96 X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY = 0 97 X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES = 0 98 X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT = 0 99 X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY = 0 100 X_CRT_SWAB_DEFINED = 0 101 X_CRT_SYSTEM_DEFINED = 0 102 X_CRT_TERMINATE_DEFINED = 0 103 X_CRT_WPERROR_DEFINED = 0 104 X_CRT_WSYSTEM_DEFINED = 0 105 X_CVTBUFSIZE = 349 106 X_DIV_T_DEFINED = 0 107 X_DLL = 0 108 X_ERRCODE_DEFINED = 0 109 X_FILE_OFFSET_BITS = 64 110 X_FREEA_INLINE = 0 111 X_FREEENTRY = 0 112 X_GCC_LIMITS_H_ = 0 113 X_HEAPBADBEGIN = -3 114 X_HEAPBADNODE = -4 115 X_HEAPBADPTR = -6 116 X_HEAPEMPTY = -1 117 X_HEAPEND = -5 118 X_HEAPINFO_DEFINED = 0 119 X_HEAPOK = -2 120 X_HEAP_MAXREQ = 0xFFFFFFFFFFFFFFE0 121 X_I16_MAX = 32767 122 X_I16_MIN = -32768 123 X_I32_MAX = 2147483647 124 X_I32_MIN = -2147483648 125 X_I64_MAX = 9223372036854775807 126 X_I64_MIN = -9223372036854775808 127 X_I8_MAX = 127 128 X_I8_MIN = -128 129 X_INC_CRTDEFS = 0 130 X_INC_CRTDEFS_MACRO = 0 131 X_INC_LIMITS = 0 132 X_INC_MINGW_SECAPI = 0 133 X_INC_STDLIB = 0 134 X_INC_STDLIB_S = 0 135 X_INC_VADEFS = 0 136 X_INC__MINGW_H = 0 137 X_INT128_DEFINED = 0 138 X_INTEGRAL_MAX_BITS = 64 139 X_INTPTR_T_DEFINED = 0 140 X_LIMITS_H___ = 0 141 X_MALLOC_H_ = 0 142 X_MAX_DIR = 256 143 X_MAX_DRIVE = 3 144 X_MAX_ENV = 32767 145 X_MAX_EXT = 256 146 X_MAX_FNAME = 256 147 X_MAX_PATH = 260 148 X_MAX_WAIT_MALLOC_CRT = 60000 149 X_MM_MALLOC_H_INCLUDED = 0 150 X_MT = 0 151 X_M_AMD64 = 100 152 X_M_X64 = 100 153 X_ONEXIT_T_DEFINED = 0 154 X_OUT_TO_DEFAULT = 0 155 X_OUT_TO_MSGBOX = 2 156 X_OUT_TO_STDERR = 1 157 X_PGLOBAL = 0 158 X_PTRDIFF_T_ = 0 159 X_PTRDIFF_T_DEFINED = 0 160 X_QSORT_S_DEFINED = 0 161 X_REENTRANT = 1 162 X_REPORT_ERRMODE = 3 163 X_RSIZE_T_DEFINED = 0 164 X_SECURECRT_FILL_BUFFER_PATTERN = 0xFD 165 X_SIZE_T_DEFINED = 0 166 X_SSIZE_T_DEFINED = 0 167 X_TAGLC_ID_DEFINED = 0 168 X_THREADLOCALEINFO = 0 169 X_TIME32_T_DEFINED = 0 170 X_TIME64_T_DEFINED = 0 171 X_TIME_T_DEFINED = 0 172 X_UI16_MAX = 0xffff 173 X_UI32_MAX = 0xffffffff 174 X_UI64_MAX = 0xffffffffffffffff 175 X_UI8_MAX = 0xff 176 X_UINTPTR_T_DEFINED = 0 177 X_USEDENTRY = 1 178 X_VA_LIST_DEFINED = 0 179 X_W64 = 0 180 X_WCHAR_T_DEFINED = 0 181 X_WCTYPE_T_DEFINED = 0 182 X_WIN32 = 1 183 X_WIN32_WINNT = 0x502 184 X_WIN64 = 1 185 X_WINT_T = 0 186 X_WRITE_ABORT_MSG = 0x1 187 X_WSTDLIBP_DEFINED = 0 188 X_WSTDLIBP_S_DEFINED = 0 189 X_WSTDLIB_DEFINED = 0 190 X_WSTDLIB_S_DEFINED = 0 191 ) 192 193 type Ptrdiff_t = int64 /* <builtin>:3:26 */ 194 195 type Size_t = uint64 /* <builtin>:9:23 */ 196 197 type Wchar_t = uint16 /* <builtin>:15:24 */ 198 199 type X__int128_t = struct { 200 Flo int64 201 Fhi int64 202 } /* <builtin>:21:43 */ // must match modernc.org/mathutil.Int128 203 type X__uint128_t = struct { 204 Flo uint64 205 Fhi uint64 206 } /* <builtin>:22:44 */ // must match modernc.org/mathutil.Int128 207 208 type X__builtin_va_list = uintptr /* <builtin>:46:14 */ 209 type X__float128 = float64 /* <builtin>:47:21 */ 210 211 type Va_list = X__builtin_va_list /* <builtin>:50:27 */ 212 213 // * 214 // This file has no copyright assigned and is placed in the Public Domain. 215 // This file is part of the mingw-w64 runtime package. 216 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 217 218 // * 219 // This file has no copyright assigned and is placed in the Public Domain. 220 // This file is part of the mingw-w64 runtime package. 221 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 222 223 // * 224 // This file has no copyright assigned and is placed in the Public Domain. 225 // This file is part of the mingw-w64 runtime package. 226 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 227 228 // * 229 // This file has no copyright assigned and is placed in the Public Domain. 230 // This file is part of the mingw-w64 runtime package. 231 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 232 233 // This macro holds an monotonic increasing value, which indicates 234 // a specific fix/patch is present on trunk. This value isn't related to 235 // minor/major version-macros. It is increased on demand, if a big 236 // fix was applied to trunk. This macro gets just increased on trunk. For 237 // other branches its value won't be modified. 238 239 // mingw.org's version macros: these make gcc to define 240 // MINGW32_SUPPORTS_MT_EH and to use the _CRT_MT global 241 // and the __mingwthr_key_dtor() function from the MinGW 242 // CRT in its private gthr-win32.h header. 243 244 // Set VC specific compiler target macros. 245 246 // MS does not prefix symbols by underscores for 64-bit. 247 // As we have to support older gcc version, which are using underscores 248 // as symbol prefix for x64, we have to check here for the user label 249 // prefix defined by gcc. 250 251 // Special case nameless struct/union. 252 253 // MinGW-w64 has some additional C99 printf/scanf feature support. 254 // So we add some helper macros to ease recognition of them. 255 256 // * 257 // This file has no copyright assigned and is placed in the Public Domain. 258 // This file is part of the mingw-w64 runtime package. 259 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 260 261 // http://msdn.microsoft.com/en-us/library/ms175759%28v=VS.100%29.aspx 262 // Templates won't work in C, will break if secure API is not enabled, disabled 263 264 // https://blogs.msdn.com/b/sdl/archive/2010/02/16/vc-2010-and-memcpy.aspx?Redirected=true 265 // fallback on default implementation if we can't know the size of the destination 266 267 // Include _cygwin.h if we're building a Cygwin application. 268 269 // Target specific macro replacement for type "long". In the Windows API, 270 // the type long is always 32 bit, even if the target is 64 bit (LLP64). 271 // On 64 bit Cygwin, the type long is 64 bit (LP64). So, to get the right 272 // sized definitions and declarations, all usage of type long in the Windows 273 // headers have to be replaced by the below defined macro __LONG32. 274 275 // C/C++ specific language defines. 276 277 // Note the extern. This is needed to work around GCC's 278 // limitations in handling dllimport attribute. 279 280 // Attribute `nonnull' was valid as of gcc 3.3. We don't use GCC's 281 // variadiac macro facility, because variadic macros cause syntax 282 // errors with --traditional-cpp. 283 284 // High byte is the major version, low byte is the minor. 285 286 // * 287 // This file has no copyright assigned and is placed in the Public Domain. 288 // This file is part of the mingw-w64 runtime package. 289 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 290 291 // * 292 // This file has no copyright assigned and is placed in the Public Domain. 293 // This file is part of the mingw-w64 runtime package. 294 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 295 296 type X__gnuc_va_list = X__builtin_va_list /* vadefs.h:24:29 */ 297 298 type Ssize_t = int64 /* crtdefs.h:45:35 */ 299 300 type Rsize_t = Size_t /* crtdefs.h:52:16 */ 301 302 type Intptr_t = int64 /* crtdefs.h:62:35 */ 303 304 type Uintptr_t = uint64 /* crtdefs.h:75:44 */ 305 306 type Wint_t = uint16 /* crtdefs.h:106:24 */ 307 type Wctype_t = uint16 /* crtdefs.h:107:24 */ 308 309 type Errno_t = int32 /* crtdefs.h:113:13 */ 310 311 type X__time32_t = int32 /* crtdefs.h:118:14 */ 312 313 type X__time64_t = int64 /* crtdefs.h:123:35 */ 314 315 type Time_t = X__time64_t /* crtdefs.h:138:20 */ 316 317 type Threadlocaleinfostruct = struct { 318 Frefcount int32 319 Flc_codepage uint32 320 Flc_collate_cp uint32 321 Flc_handle [6]uint32 322 Flc_id [6]LC_ID 323 Flc_category [6]struct { 324 Flocale uintptr 325 Fwlocale uintptr 326 Frefcount uintptr 327 Fwrefcount uintptr 328 } 329 Flc_clike int32 330 Fmb_cur_max int32 331 Flconv_intl_refcount uintptr 332 Flconv_num_refcount uintptr 333 Flconv_mon_refcount uintptr 334 Flconv uintptr 335 Fctype1_refcount uintptr 336 Fctype1 uintptr 337 Fpctype uintptr 338 Fpclmap uintptr 339 Fpcumap uintptr 340 Flc_time_curr uintptr 341 } /* crtdefs.h:422:1 */ 342 343 type Pthreadlocinfo = uintptr /* crtdefs.h:424:39 */ 344 type Pthreadmbcinfo = uintptr /* crtdefs.h:425:36 */ 345 346 type Localeinfo_struct = struct { 347 Flocinfo Pthreadlocinfo 348 Fmbcinfo Pthreadmbcinfo 349 } /* crtdefs.h:428:9 */ 350 351 type X_locale_tstruct = Localeinfo_struct /* crtdefs.h:431:3 */ 352 type X_locale_t = uintptr /* crtdefs.h:431:19 */ 353 354 type TagLC_ID = struct { 355 FwLanguage uint16 356 FwCountry uint16 357 FwCodePage uint16 358 } /* crtdefs.h:422:1 */ 359 360 type LC_ID = TagLC_ID /* crtdefs.h:439:3 */ 361 type LPLC_ID = uintptr /* crtdefs.h:439:9 */ 362 363 type Threadlocinfo = Threadlocaleinfostruct /* crtdefs.h:468:3 */ 364 365 // Copyright (C) 1992-2018 Free Software Foundation, Inc. 366 // 367 // This file is part of GCC. 368 // 369 // GCC is free software; you can redistribute it and/or modify it under 370 // the terms of the GNU General Public License as published by the Free 371 // Software Foundation; either version 3, or (at your option) any later 372 // version. 373 // 374 // GCC is distributed in the hope that it will be useful, but WITHOUT ANY 375 // WARRANTY; without even the implied warranty of MERCHANTABILITY or 376 // FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 377 // for more details. 378 // 379 // Under Section 7 of GPL version 3, you are granted additional 380 // permissions described in the GCC Runtime Library Exception, version 381 // 3.1, as published by the Free Software Foundation. 382 // 383 // You should have received a copy of the GNU General Public License and 384 // a copy of the GCC Runtime Library Exception along with this program; 385 // see the files COPYING3 and COPYING.RUNTIME respectively. If not, see 386 // <http://www.gnu.org/licenses/>. 387 388 // This administrivia gets added to the beginning of limits.h 389 // if the system has its own version of limits.h. 390 391 // We use _GCC_LIMITS_H_ because we want this not to match 392 // any macros that the system's limits.h uses for its own purposes. 393 394 // Use "..." so that we find syslimits.h only in this same directory. 395 // syslimits.h stands for the system's own limits.h file. 396 // If we can use it ok unmodified, then we install this text. 397 // If fixincludes fixes it, then the fixed version is installed 398 // instead of this text. 399 400 // * 401 // This file has no copyright assigned and is placed in the Public Domain. 402 // This file is part of the mingw-w64 runtime package. 403 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 404 // * 405 // This file has no copyright assigned and is placed in the Public Domain. 406 // This file is part of the mingw-w64 runtime package. 407 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 408 409 // File system limits 410 // 411 // NOTE: Apparently the actual size of PATH_MAX is 260, but a space is 412 // required for the NUL. TODO: Test? 413 // NOTE: PATH_MAX is the POSIX equivalent for Microsoft's MAX_PATH; the two 414 // are semantically identical, with a limit of 259 characters for the 415 // path name, plus one for a terminating NUL, for a total of 260. 416 417 // Copyright (C) 1991-2018 Free Software Foundation, Inc. 418 // 419 // This file is part of GCC. 420 // 421 // GCC is free software; you can redistribute it and/or modify it under 422 // the terms of the GNU General Public License as published by the Free 423 // Software Foundation; either version 3, or (at your option) any later 424 // version. 425 // 426 // GCC is distributed in the hope that it will be useful, but WITHOUT ANY 427 // WARRANTY; without even the implied warranty of MERCHANTABILITY or 428 // FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 429 // for more details. 430 // 431 // Under Section 7 of GPL version 3, you are granted additional 432 // permissions described in the GCC Runtime Library Exception, version 433 // 3.1, as published by the Free Software Foundation. 434 // 435 // You should have received a copy of the GNU General Public License and 436 // a copy of the GCC Runtime Library Exception along with this program; 437 // see the files COPYING3 and COPYING.RUNTIME respectively. If not, see 438 // <http://www.gnu.org/licenses/>. 439 440 // Number of bits in a `char'. 441 442 // Maximum length of a multibyte character. 443 444 // Minimum and maximum values a `signed char' can hold. 445 446 // Maximum value an `unsigned char' can hold. (Minimum is 0). 447 448 // Minimum and maximum values a `char' can hold. 449 450 // Minimum and maximum values a `signed short int' can hold. 451 452 // Maximum value an `unsigned short int' can hold. (Minimum is 0). 453 454 // Minimum and maximum values a `signed int' can hold. 455 456 // Maximum value an `unsigned int' can hold. (Minimum is 0). 457 458 // Minimum and maximum values a `signed long int' can hold. 459 // (Same as `int'). 460 461 // Maximum value an `unsigned long int' can hold. (Minimum is 0). 462 463 // Minimum and maximum values a `signed long long int' can hold. 464 465 // Maximum value an `unsigned long long int' can hold. (Minimum is 0). 466 467 // Minimum and maximum values a `signed long long int' can hold. 468 469 // Maximum value an `unsigned long long int' can hold. (Minimum is 0). 470 471 // This administrivia gets added to the end of limits.h 472 // if the system has its own version of limits.h. 473 474 type X_onexit_t = uintptr /* stdlib.h:49:15 */ 475 476 type X_div_t = struct { 477 Fquot int32 478 Frem int32 479 } /* stdlib.h:59:11 */ 480 481 type Div_t = X_div_t /* stdlib.h:62:5 */ 482 483 type X_ldiv_t = struct { 484 Fquot int32 485 Frem int32 486 } /* stdlib.h:64:11 */ 487 488 type Ldiv_t = X_ldiv_t /* stdlib.h:67:5 */ 489 490 type X_LDOUBLE = struct{ Fld [10]uint8 } /* stdlib.h:76:5 */ 491 492 type X_CRT_DOUBLE = struct{ Fx float64 } /* stdlib.h:83:5 */ 493 494 type X_CRT_FLOAT = struct{ Ff float32 } /* stdlib.h:87:5 */ 495 496 type X_LONGDOUBLE = struct{ Fx float64 } /* stdlib.h:94:5 */ 497 498 type X_LDBL12 = struct{ Fld12 [12]uint8 } /* stdlib.h:101:5 */ 499 500 type X_purecall_handler = uintptr /* stdlib.h:142:16 */ 501 502 type X_invalid_parameter_handler = uintptr /* stdlib.h:147:16 */ 503 504 type Lldiv_t = struct { 505 Fquot int64 506 Frem int64 507 } /* stdlib.h:699:61 */ 508 509 // * 510 // This file has no copyright assigned and is placed in the Public Domain. 511 // This file is part of the mingw-w64 runtime package. 512 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 513 514 // * 515 // This file has no copyright assigned and is placed in the Public Domain. 516 // This file is part of the mingw-w64 runtime package. 517 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 518 519 // Return codes for _heapwalk() 520 521 // Values for _heapinfo.useflag 522 523 // The structure used to walk through the heap with _heapwalk. 524 type X_heapinfo = struct { 525 F_pentry uintptr 526 F_size Size_t 527 F_useflag int32 528 F__ccgo_pad1 [4]byte 529 } /* malloc.h:46:11 */ 530 531 // * 532 // This file has no copyright assigned and is placed in the Public Domain. 533 // This file is part of the mingw-w64 runtime package. 534 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 535 536 // * 537 // This file has no copyright assigned and is placed in the Public Domain. 538 // This file is part of the mingw-w64 runtime package. 539 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 540 541 // Return codes for _heapwalk() 542 543 // Values for _heapinfo.useflag 544 545 // The structure used to walk through the heap with _heapwalk. 546 type X_HEAPINFO = X_heapinfo /* malloc.h:50:5 */ 547 548 var _ int8 /* gen.c:2:13: */