2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the w64 mingw-runtime package.
4 * No warranty is given; refer to the file DISCLAIMER within this package.
12 #error Only Win32 target is supported!
15 #pragma pack(push,_CRT_PACKING)
22 #define _CRTIMP __declspec(dllimport)
25 #ifndef __TINYC__ //gr
26 #ifdef _USE_32BIT_TIME_T
28 #undef _USE_32BIT_TIME_T
31 #if _INTEGRAL_MAX_BITS < 64
32 #define _USE_32BIT_TIME_T
37 #ifndef _TIME32_T_DEFINED
38 typedef long __time32_t
;
39 #define _TIME32_T_DEFINED
42 #ifndef _TIME64_T_DEFINED
43 #if _INTEGRAL_MAX_BITS >= 64
44 typedef __int64 __time64_t
;
46 #define _TIME64_T_DEFINED
49 #ifndef _TIME_T_DEFINED
50 #ifdef _USE_32BIT_TIME_T
51 typedef __time32_t
time_t;
53 typedef __time64_t
time_t;
55 #define _TIME_T_DEFINED
58 #ifndef _TIMEB_DEFINED
59 #define _TIMEB_DEFINED
63 unsigned short millitm
;
71 unsigned short millitm
;
77 #if _INTEGRAL_MAX_BITS >= 64
80 unsigned short millitm
;
86 #ifdef _USE_32BIT_TIME_T
87 #define _timeb __timeb32
88 #define _ftime _ftime32
90 #define _timeb __timeb64
91 #define _ftime _ftime64
95 _CRTIMP
void __cdecl
_ftime32(struct __timeb32
*_Time
);
96 #if _INTEGRAL_MAX_BITS >= 64
97 _CRTIMP
void __cdecl
_ftime64(struct __timeb64
*_Time
);
100 #ifndef _TIMESPEC_DEFINED
101 #define _TIMESPEC_DEFINED
103 time_t tv_sec
; /* Seconds */
104 long tv_nsec
; /* Nanoseconds */
108 struct timespec it_interval
; /* Timer period */
109 struct timespec it_value
; /* Timer expiration */
113 #if !defined (RC_INVOKED) && !defined (NO_OLDNAMES)
114 #ifdef _USE_32BIT_TIME_T
115 __CRT_INLINE
void __cdecl
ftime(struct timeb
*_Tmb
) {
116 _ftime32((struct __timeb32
*)_Tmb
);
119 __CRT_INLINE
void __cdecl
ftime(struct timeb
*_Tmb
) {
120 _ftime64((struct __timeb64
*)_Tmb
);
131 #include <sec_api/sys/timeb_s.h>