Add prototypes for new msvcrt.dll versions
* include/_mingw.h (__MSVCRT_VERSION__): Define default as 0x0600. * include/time.h (__time64_t): Add typedef. (_mktime64): Add prototype for __MSVCRT_VERSION__ >= 0x0601. (_ctime64): Likewise. (_wctime64): Likewise. (_gmtime64): Likewise. (_localtime64): Likewise. (wcsftime): Move into _WTIME_DEFINED block. Regroup non-ANSI prototypes. * include/io.h: Include <stdint.h>. (__finddata64_t): Add struct definition. (__wfinddata64_t): Likewise. (_findfirst64): Add prototype for __MSVCRT_VERSION__ >= 0x0601. (_findnext64): Likewise. (_wfindfirst64): Likewise. (_wfindnext64): Likewise. * include/sys/timeb.h (__timeb64): Add struct definition. (_ftime64): Add prototype for __MSVCRT_VERSION__ >= 0x0601. * include/sys/utime.h (__utimbuf64): Add struct definition. (_utime64): Add prototype for __MSVCRT_VERSION__ >= 0x0601. (_futime64): Likewise. (_wutime64): Likewise. * include/sys/stat.h (__stat64): Add struct definition. (_fstat64): Add prototype for __MSVCRT_VERSION__ >= 0x0601. (_stat64): Likewise. (_wstat64): Likwise. * include/sys/types.h (__time64_t): Add typedef. * include/wchar.h (__wfinddata64_t): Add structure definition. (__stat64): Likewise. (_wctime64): Add prototype for __MSVCRT_VERSION__ >= 0x0601. (_wfindfirst64): Likewise. (_wfindnext64): Likewise. (_wutime64): Likewise. (_wstat64): Likwise. * include/malloc.h (_aligned_free): Add prototype for __MSVCRT_VERSION__ >= 0x0700. (_aligned_malloc): Likewise. (_aligned_offset_malloc): Likewise. (_aligned_offset_realloc): Likewise. (_aligned_realloc): Likewise. * include/string.h (_wcserror): Add prototype for __MSVCRT_VERSION__ >= 0x0700. (__wcserror): Likewise. * include/math.h (_set_SSE2_enable): Add prototype for __MSVCRT_VERSION__ >= 0x0701.
This commit is contained in:
@ -62,6 +62,13 @@ typedef long time_t;
|
||||
#define _TIME_T_DEFINED
|
||||
#endif
|
||||
|
||||
#ifndef __STRICT_ANSI__
|
||||
/* A 64-bit time_t to get to Y3K */
|
||||
#ifndef _TIME64_T_DEFINED
|
||||
typedef __int64 __time64_t
|
||||
#define _TIME64_T_DEFINED
|
||||
#endif
|
||||
#endif
|
||||
/*
|
||||
* A type for measuring processor time (in clock ticks).
|
||||
*/
|
||||
@ -70,7 +77,6 @@ typedef long clock_t;
|
||||
#define _CLOCK_T_DEFINED
|
||||
#endif
|
||||
|
||||
|
||||
/*
|
||||
* A structure for storing all kinds of useful information about the
|
||||
* current (or another) time.
|
||||
@ -113,12 +119,10 @@ _CRTIMP char* __cdecl ctime (const time_t*);
|
||||
_CRTIMP struct tm* __cdecl gmtime (const time_t*);
|
||||
_CRTIMP struct tm* __cdecl localtime (const time_t*);
|
||||
|
||||
|
||||
_CRTIMP size_t __cdecl strftime (char*, size_t, const char*, const struct tm*);
|
||||
|
||||
_CRTIMP size_t __cdecl wcsftime (wchar_t*, size_t, const wchar_t*, const struct tm*);
|
||||
_CRTIMP size_t __cdecl strftime (char*, size_t, const char*, const struct tm*);
|
||||
|
||||
#ifndef __STRICT_ANSI__
|
||||
|
||||
extern _CRTIMP void __cdecl _tzset (void);
|
||||
|
||||
#ifndef _NO_OLDNAMES
|
||||
@ -128,7 +132,14 @@ extern _CRTIMP void __cdecl tzset (void);
|
||||
_CRTIMP char* __cdecl _strdate(char*);
|
||||
_CRTIMP char* __cdecl _strtime(char*);
|
||||
|
||||
#endif /* Not __STRICT_ANSI__ */
|
||||
/* These require newer versions of msvcrt.dll (6.10 or higher). */
|
||||
#if __MSVCRT_VERSION__ >= 0x0601
|
||||
_CRTIMP __time64_t __cdecl _time64( __time64_t);
|
||||
_CRTIMP __time64_t __cdecl _mktime64 (struct tm*);
|
||||
_CRTIMP char* __cdecl _ctime64 (const __time64_t*);
|
||||
_CRTIMP struct tm* __cdecl _gmtime64 (const __time64_t*);
|
||||
_CRTIMP struct tm* __cdecl _localtime64 (const __time64_t*);
|
||||
#endif /* __MSVCRT_VERSION__ >= 0x0601 */
|
||||
|
||||
/*
|
||||
* _daylight: non zero if daylight savings time is used.
|
||||
@ -181,19 +192,6 @@ __MINGW_IMPORT int daylight;
|
||||
__MINGW_IMPORT long timezone;
|
||||
__MINGW_IMPORT char *tzname[2];
|
||||
|
||||
#ifndef _WTIME_DEFINED
|
||||
|
||||
/* wide function prototypes, also declared in wchar.h */
|
||||
|
||||
_CRTIMP wchar_t* __cdecl _wasctime(const struct tm*);
|
||||
_CRTIMP wchar_t* __cdecl _wctime(const time_t*);
|
||||
_CRTIMP wchar_t* __cdecl _wstrdate(wchar_t*);
|
||||
_CRTIMP wchar_t* __cdecl _wstrtime(wchar_t*);
|
||||
|
||||
#define _WTIME_DEFINED
|
||||
#endif /* _WTIME_DEFINED */
|
||||
|
||||
|
||||
#else /* not __MSVCRT__ */
|
||||
|
||||
/* CRTDLL is royally messed up when it comes to these macros.
|
||||
@ -208,6 +206,24 @@ __MINGW_IMPORT char *tzname[2];
|
||||
#endif /* not __MSVCRT__ */
|
||||
|
||||
#endif /* Not _NO_OLDNAMES */
|
||||
#endif /* Not __STRICT_ANSI__ */
|
||||
|
||||
#ifndef __STRICT_ANSI__
|
||||
#ifndef _WTIME_DEFINED
|
||||
/* wide function prototypes, also declared in wchar.h */
|
||||
#ifdef __MSVCRT__
|
||||
_CRTIMP wchar_t* __cdecl _wasctime(const struct tm*);
|
||||
_CRTIMP wchar_t* __cdecl _wctime(const time_t*);
|
||||
_CRTIMP wchar_t* __cdecl _wstrdate(wchar_t*);
|
||||
_CRTIMP wchar_t* __cdecl _wstrtime(wchar_t*);
|
||||
#if __MSVCRT_VERSION__ >= 0x0601
|
||||
_CRTIMP wchar_t* __cdecl _wctime64 (const __time64_t*);
|
||||
#endif
|
||||
#endif /* __MSVCRT__ */
|
||||
_CRTIMP size_t __cdecl wcsftime (wchar_t*, size_t, const wchar_t*, const struct tm*);
|
||||
#define _WTIME_DEFINED
|
||||
#endif /* _WTIME_DEFINED */
|
||||
#endif /* __STRICT_ANSI__ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
Reference in New Issue
Block a user