time_windows_386.go (18348B)
1 // Code generated by 'ccgo time/gen.c -crt-import-path "" -export-defines "" -export-enums "" -export-externs X -export-fields F -export-structs "" -export-typedefs "" -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -ignore-unsupported-alignment -o time/time_windows_386.go -pkgname time', DO NOT EDIT. 2 3 package time 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 CLK_TCK = 1000 // time.h:245:1: 19 CLOCKS_PER_SEC = 1000 // time.h:110:1: 20 CLOCK_MONOTONIC = 1 // pthread_time.h:62:1: 21 CLOCK_PROCESS_CPUTIME_ID = 2 // pthread_time.h:66:1: 22 CLOCK_REALTIME = 0 // pthread_time.h:58:1: 23 CLOCK_THREAD_CPUTIME_ID = 3 // pthread_time.h:70:1: 24 DUMMYSTRUCTNAME = 0 // _mingw.h:519:1: 25 DUMMYSTRUCTNAME1 = 0 // _mingw.h:520:1: 26 DUMMYSTRUCTNAME2 = 0 // _mingw.h:521:1: 27 DUMMYSTRUCTNAME3 = 0 // _mingw.h:522:1: 28 DUMMYSTRUCTNAME4 = 0 // _mingw.h:523:1: 29 DUMMYSTRUCTNAME5 = 0 // _mingw.h:524:1: 30 DUMMYUNIONNAME = 0 // _mingw.h:497:1: 31 DUMMYUNIONNAME1 = 0 // _mingw.h:498:1: 32 DUMMYUNIONNAME2 = 0 // _mingw.h:499:1: 33 DUMMYUNIONNAME3 = 0 // _mingw.h:500:1: 34 DUMMYUNIONNAME4 = 0 // _mingw.h:501:1: 35 DUMMYUNIONNAME5 = 0 // _mingw.h:502:1: 36 DUMMYUNIONNAME6 = 0 // _mingw.h:503:1: 37 DUMMYUNIONNAME7 = 0 // _mingw.h:504:1: 38 DUMMYUNIONNAME8 = 0 // _mingw.h:505:1: 39 DUMMYUNIONNAME9 = 0 // _mingw.h:506:1: 40 MINGW_DDK_H = 0 // _mingw_ddk.h:2:1: 41 MINGW_HAS_DDK_H = 1 // _mingw_ddk.h:4:1: 42 MINGW_HAS_SECURE_API = 1 // _mingw.h:602:1: 43 MINGW_SDK_INIT = 0 // _mingw.h:598:1: 44 TIMER_ABSTIME = 1 // pthread_time.h:54:1: 45 UNALIGNED = 0 // _mingw.h:384:1: 46 USE___UUIDOF = 0 // _mingw.h:77:1: 47 WIN32 = 1 // <predefined>:258:1: 48 WINNT = 1 // <predefined>:306:1: 49 WINPTHREAD_API = 0 // pthread_time.h:80:1: 50 WIN_PTHREADS_TIME_H = 0 // pthread_time.h:26:1: 51 X_AGLOBAL = 0 // _mingw.h:346:1: 52 X_ANONYMOUS_STRUCT = 0 // _mingw.h:474:1: 53 X_ANONYMOUS_UNION = 0 // _mingw.h:473:1: 54 X_ARGMAX = 100 // _mingw.h:402:1: 55 X_CLOCK_T_DEFINED = 0 // time.h:59:1: 56 X_CONST_RETURN = 0 // _mingw.h:377:1: 57 X_CRTNOALIAS = 0 // corecrt.h:29:1: 58 X_CRTRESTRICT = 0 // corecrt.h:33:1: 59 X_CRT_ALTERNATIVE_IMPORTED = 0 // _mingw.h:313:1: 60 X_CRT_MANAGED_HEAP_DEPRECATE = 0 // _mingw.h:361:1: 61 X_CRT_PACKING = 8 // corecrt.h:14:1: 62 X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES = 0 // _mingw_secapi.h:34:1: 63 X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY = 0 // _mingw_secapi.h:35:1: 64 X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES = 0 // _mingw_secapi.h:36:1: 65 X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT = 0 // _mingw_secapi.h:37:1: 66 X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY = 0 // _mingw_secapi.h:38:1: 67 X_CRT_USE_WINAPI_FAMILY_DESKTOP_APP = 0 // corecrt.h:501:1: 68 X_DLL = 0 // _mingw.h:326:1: 69 X_ERRCODE_DEFINED = 0 // corecrt.h:117:1: 70 X_FILE_OFFSET_BITS = 64 // <builtin>:25:1: 71 X_ILP32 = 1 // <predefined>:211:1: 72 X_INC_CORECRT = 0 // corecrt.h:8:1: 73 X_INC_CRTDEFS = 0 // crtdefs.h:8:1: 74 X_INC_CRTDEFS_MACRO = 0 // _mingw_mac.h:8:1: 75 X_INC_MINGW_SECAPI = 0 // _mingw_secapi.h:8:1: 76 X_INC_VADEFS = 0 // vadefs.h:7:1: 77 X_INC_WTIME_INL = 0 // time.h:190:1: 78 X_INC_WTIME_S_INL = 0 // time.h:202:1: 79 X_INC__MINGW_H = 0 // _mingw.h:8:1: 80 X_INT128_DEFINED = 0 // _mingw.h:237:1: 81 X_INTEGRAL_MAX_BITS = 64 // <predefined>:320:1: 82 X_INTPTR_T_DEFINED = 0 // corecrt.h:62:1: 83 X_MT = 0 // _mingw.h:330:1: 84 X_M_IX86 = 600 // _mingw_mac.h:54:1: 85 X_PGLOBAL = 0 // _mingw.h:342:1: 86 X_POSIX_CPUTIME = 200809 // pthread_time.h:40:1: 87 X_POSIX_MONOTONIC_CLOCK = 200809 // pthread_time.h:35:1: 88 X_POSIX_THREAD_CPUTIME = 200809 // pthread_time.h:45:1: 89 X_POSIX_TIMERS = 200809 // pthread_time.h:30:1: 90 X_PTRDIFF_T_ = 0 // corecrt.h:90:1: 91 X_PTRDIFF_T_DEFINED = 0 // corecrt.h:88:1: 92 X_RSIZE_T_DEFINED = 0 // corecrt.h:58:1: 93 X_SECURECRT_FILL_BUFFER_PATTERN = 0xFD // _mingw.h:349:1: 94 X_SIZE_T_DEFINED = 0 // corecrt.h:37:1: 95 X_SSIZE_T_DEFINED = 0 // corecrt.h:47:1: 96 X_TAGLC_ID_DEFINED = 0 // corecrt.h:447:1: 97 X_THREADLOCALEINFO = 0 // corecrt.h:456:1: 98 X_TIME32_T_DEFINED = 0 // corecrt.h:122:1: 99 X_TIME64_T_DEFINED = 0 // corecrt.h:127:1: 100 X_TIMEB_DEFINED = 0 // timeb.h:51:1: 101 X_TIMEB_H_ = 0 // timeb.h:7:1: 102 X_TIMEB_H_S = 0 // timeb_s.h:8:1: 103 X_TIMESPEC_DEFINED = 0 // timeb.h:90:1: 104 X_TIMEVAL_DEFINED = 0 // _timeval.h:8:1: 105 X_TIMEZONE_DEFINED = 0 // time.h:265:1: 106 X_TIME_H_ = 0 // time.h:7:1: 107 X_TIME_T_DEFINED = 0 // corecrt.h:139:1: 108 X_TM_DEFINED = 0 // time.h:96:1: 109 X_UINTPTR_T_DEFINED = 0 // corecrt.h:75:1: 110 X_USE_32BIT_TIME_T = 0 // _mingw.h:372:1: 111 X_VA_LIST_DEFINED = 0 // <builtin>:55:1: 112 X_W64 = 0 // _mingw.h:296:1: 113 X_WCHAR_T_DEFINED = 0 // corecrt.h:101:1: 114 X_WCTYPE_T_DEFINED = 0 // corecrt.h:108:1: 115 X_WIN32 = 1 // <predefined>:164:1: 116 X_WIN32_WINNT = 0x502 // _mingw.h:233:1: 117 X_WINT_T = 0 // corecrt.h:110:1: 118 X_WTIME_DEFINED = 0 // time.h:213:1: 119 X_X86_ = 1 // <predefined>:169:1: 120 I386 = 1 // <predefined>:171:1: 121 ) 122 123 type Ptrdiff_t = int32 /* <builtin>:3:26 */ 124 125 type Size_t = uint32 /* <builtin>:9:23 */ 126 127 type Wchar_t = uint16 /* <builtin>:15:24 */ 128 129 type X__builtin_va_list = uintptr /* <builtin>:46:14 */ 130 type X__float128 = float64 /* <builtin>:47:21 */ 131 132 type Va_list = X__builtin_va_list /* <builtin>:50:27 */ 133 134 // * 135 // This file has no copyright assigned and is placed in the Public Domain. 136 // This file is part of the mingw-w64 runtime package. 137 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 138 139 // * 140 // This file has no copyright assigned and is placed in the Public Domain. 141 // This file is part of the mingw-w64 runtime package. 142 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 143 144 // * 145 // This file has no copyright assigned and is placed in the Public Domain. 146 // This file is part of the mingw-w64 runtime package. 147 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 148 149 // * 150 // This file has no copyright assigned and is placed in the Public Domain. 151 // This file is part of the mingw-w64 runtime package. 152 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 153 154 // * 155 // This file has no copyright assigned and is placed in the Public Domain. 156 // This file is part of the mingw-w64 runtime package. 157 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 158 159 // This macro holds an monotonic increasing value, which indicates 160 // a specific fix/patch is present on trunk. This value isn't related to 161 // minor/major version-macros. It is increased on demand, if a big 162 // fix was applied to trunk. This macro gets just increased on trunk. For 163 // other branches its value won't be modified. 164 165 // mingw.org's version macros: these make gcc to define 166 // MINGW32_SUPPORTS_MT_EH and to use the _CRT_MT global 167 // and the __mingwthr_key_dtor() function from the MinGW 168 // CRT in its private gthr-win32.h header. 169 170 // Set VC specific compiler target macros. 171 172 // For x86 we have always to prefix by underscore. 173 174 // Special case nameless struct/union. 175 176 // MinGW-w64 has some additional C99 printf/scanf feature support. 177 // So we add some helper macros to ease recognition of them. 178 179 // If _FORTIFY_SOURCE is enabled, some inline functions may use 180 // __builtin_va_arg_pack(). GCC may report an error if the address 181 // of such a function is used. Set _FORTIFY_VA_ARG=0 in this case. 182 183 // Enable workaround for ABI incompatibility on affected platforms 184 185 // * 186 // This file has no copyright assigned and is placed in the Public Domain. 187 // This file is part of the mingw-w64 runtime package. 188 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 189 190 // http://msdn.microsoft.com/en-us/library/ms175759%28v=VS.100%29.aspx 191 // Templates won't work in C, will break if secure API is not enabled, disabled 192 193 // https://blogs.msdn.com/b/sdl/archive/2010/02/16/vc-2010-and-memcpy.aspx?Redirected=true 194 // fallback on default implementation if we can't know the size of the destination 195 196 // Include _cygwin.h if we're building a Cygwin application. 197 198 // Target specific macro replacement for type "long". In the Windows API, 199 // the type long is always 32 bit, even if the target is 64 bit (LLP64). 200 // On 64 bit Cygwin, the type long is 64 bit (LP64). So, to get the right 201 // sized definitions and declarations, all usage of type long in the Windows 202 // headers have to be replaced by the below defined macro __LONG32. 203 204 // C/C++ specific language defines. 205 206 // Note the extern. This is needed to work around GCC's 207 // limitations in handling dllimport attribute. 208 209 // Attribute `nonnull' was valid as of gcc 3.3. We don't use GCC's 210 // variadiac macro facility, because variadic macros cause syntax 211 // errors with --traditional-cpp. 212 213 // High byte is the major version, low byte is the minor. 214 215 // * 216 // This file has no copyright assigned and is placed in the Public Domain. 217 // This file is part of the mingw-w64 runtime package. 218 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 219 220 // * 221 // This file has no copyright assigned and is placed in the Public Domain. 222 // This file is part of the mingw-w64 runtime package. 223 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 224 225 // for backward compatibility 226 227 type X__gnuc_va_list = X__builtin_va_list /* vadefs.h:24:29 */ 228 229 type Ssize_t = int32 /* corecrt.h:52:13 */ 230 231 type Rsize_t = Size_t /* corecrt.h:57:16 */ 232 233 type Intptr_t = int32 /* corecrt.h:69:13 */ 234 235 type Uintptr_t = uint32 /* corecrt.h:82:22 */ 236 237 type Wint_t = uint16 /* corecrt.h:111:24 */ 238 type Wctype_t = uint16 /* corecrt.h:112:24 */ 239 240 type Errno_t = int32 /* corecrt.h:118:13 */ 241 242 type X__time32_t = int32 /* corecrt.h:123:14 */ 243 244 type X__time64_t = int64 /* corecrt.h:128:35 */ 245 246 type Time_t = X__time32_t /* corecrt.h:141:20 */ 247 248 type Threadlocaleinfostruct = struct { 249 Frefcount int32 250 Flc_codepage uint32 251 Flc_collate_cp uint32 252 Flc_handle [6]uint32 253 Flc_id [6]LC_ID 254 Flc_category [6]struct { 255 Flocale uintptr 256 Fwlocale uintptr 257 Frefcount uintptr 258 Fwrefcount uintptr 259 } 260 Flc_clike int32 261 Fmb_cur_max int32 262 Flconv_intl_refcount uintptr 263 Flconv_num_refcount uintptr 264 Flconv_mon_refcount uintptr 265 Flconv uintptr 266 Fctype1_refcount uintptr 267 Fctype1 uintptr 268 Fpctype uintptr 269 Fpclmap uintptr 270 Fpcumap uintptr 271 Flc_time_curr uintptr 272 } /* corecrt.h:435:1 */ 273 274 type Pthreadlocinfo = uintptr /* corecrt.h:437:39 */ 275 type Pthreadmbcinfo = uintptr /* corecrt.h:438:36 */ 276 277 type Localeinfo_struct = struct { 278 Flocinfo Pthreadlocinfo 279 Fmbcinfo Pthreadmbcinfo 280 } /* corecrt.h:441:9 */ 281 282 type X_locale_tstruct = Localeinfo_struct /* corecrt.h:444:3 */ 283 type X_locale_t = uintptr /* corecrt.h:444:19 */ 284 285 type TagLC_ID = struct { 286 FwLanguage uint16 287 FwCountry uint16 288 FwCodePage uint16 289 } /* corecrt.h:435:1 */ 290 291 type LC_ID = TagLC_ID /* corecrt.h:452:3 */ 292 type LPLC_ID = uintptr /* corecrt.h:452:9 */ 293 294 type Threadlocinfo = Threadlocaleinfostruct /* corecrt.h:487:3 */ 295 296 type Clock_t = int32 /* time.h:60:16 */ 297 298 type Tm = struct { 299 Ftm_sec int32 300 Ftm_min int32 301 Ftm_hour int32 302 Ftm_mday int32 303 Ftm_mon int32 304 Ftm_year int32 305 Ftm_wday int32 306 Ftm_yday int32 307 Ftm_isdst int32 308 } /* time.h:97:3 */ 309 310 var Xdaylight int32 /* time.h:256:22: */ 311 var Xtimezone int32 /* time.h:257:23: */ 312 var Xtzname [2]uintptr /* time.h:258:23: */ 313 314 // * 315 // This file has no copyright assigned and is placed in the Public Domain. 316 // This file is part of the mingw-w64 runtime package. 317 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 318 319 type Timeval = struct { 320 Ftv_sec int32 321 Ftv_usec int32 322 } /* _timeval.h:10:1 */ 323 324 type Timezone = struct { 325 Ftz_minuteswest int32 326 Ftz_dsttime int32 327 } /* time.h:266:1 */ 328 329 // Adding timespec definition. 330 // * 331 // This file has no copyright assigned and is placed in the Public Domain. 332 // This file is part of the mingw-w64 runtime package. 333 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 334 335 // * 336 // This file has no copyright assigned and is placed in the Public Domain. 337 // This file is part of the mingw-w64 runtime package. 338 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 339 340 type X__timeb32 = struct { 341 Ftime X__time32_t 342 Fmillitm uint16 343 Ftimezone int16 344 Fdstflag int16 345 F__ccgo_pad1 [2]byte 346 } /* timeb.h:53:3 */ 347 348 type Timeb = struct { 349 Ftime Time_t 350 Fmillitm uint16 351 Ftimezone int16 352 Fdstflag int16 353 F__ccgo_pad1 [2]byte 354 } /* timeb.h:61:3 */ 355 356 type X__timeb64 = struct { 357 Ftime X__time64_t 358 Fmillitm uint16 359 Ftimezone int16 360 Fdstflag int16 361 F__ccgo_pad1 [2]byte 362 } /* timeb.h:69:3 */ 363 364 type Timespec = struct { 365 Ftv_sec Time_t 366 Ftv_nsec int32 367 } /* timeb.h:91:1 */ 368 369 type Itimerspec = struct { 370 Fit_interval struct { 371 Ftv_sec Time_t 372 Ftv_nsec int32 373 } 374 Fit_value struct { 375 Ftv_sec Time_t 376 Ftv_nsec int32 377 } 378 } /* timeb.h:96:1 */ 379 380 // POSIX 2008 says clock_gettime and timespec are defined in time.h header, 381 // but other systems - like Linux, Solaris, etc - tend to declare such 382 // recent extensions only if the following guards are met. 383 // 384 // Copyright (c) 2011-2016 mingw-w64 project 385 // 386 // Permission is hereby granted, free of charge, to any person obtaining a 387 // copy of this software and associated documentation files (the "Software"), 388 // to deal in the Software without restriction, including without limitation 389 // the rights to use, copy, modify, merge, publish, distribute, sublicense, 390 // and/or sell copies of the Software, and to permit persons to whom the 391 // Software is furnished to do so, subject to the following conditions: 392 // 393 // The above copyright notice and this permission notice shall be included in 394 // all copies or substantial portions of the Software. 395 // 396 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 397 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 398 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 399 // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 400 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 401 // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 402 // DEALINGS IN THE SOFTWARE. 403 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 // Posix timers are supported 410 411 // Monotonic clocks are available. 412 413 // CPU-time clocks are available. 414 415 // Clock support in threads are available. 416 417 type Clockid_t = int32 /* pthread_time.h:49:13 */ 418 419 var _ int8 /* gen.c:2:13: */