Signed-off-by: Jacek Caban <ja...@codeweavers.com> --- mingw-w64-crt/Makefile.am | 2 +- mingw-w64-crt/lib-common/msvcrt.def.in | 4 ++-- mingw-w64-crt/lib32/msvcr100.def.in | 4 ++-- mingw-w64-crt/lib32/msvcr80.def.in | 2 ++ mingw-w64-crt/lib32/msvcr90.def.in | 4 ++-- mingw-w64-crt/lib64/msvcr100.def.in | 4 ++-- mingw-w64-crt/lib64/msvcr80.def.in | 2 ++ mingw-w64-crt/lib64/msvcr90.def.in | 4 ++-- mingw-w64-crt/misc/difftime.c | 21 --------------------- mingw-w64-crt/misc/difftime32.c | 9 --------- mingw-w64-crt/misc/difftime64.c | 9 --------- mingw-w64-headers/crt/time.h | 10 ++++------ 12 files changed, 19 insertions(+), 56 deletions(-) delete mode 100644 mingw-w64-crt/misc/difftime.c delete mode 100644 mingw-w64-crt/misc/difftime32.c delete mode 100644 mingw-w64-crt/misc/difftime64.c
diff --git a/mingw-w64-crt/Makefile.am b/mingw-w64-crt/Makefile.am index 71f19aea..9aeb3db3 100644 --- a/mingw-w64-crt/Makefile.am +++ b/mingw-w64-crt/Makefile.am @@ -317,7 +317,7 @@ src_libmingwex=\ misc/mingw_getsp.S \ misc/alarm.c \ misc/basename.c misc/btowc.c misc/delay-f.c misc/delay-n.c \ - misc/delayimp.c misc/difftime.c misc/difftime32.c misc/difftime64.c misc/dirent.c \ + misc/delayimp.c misc/dirent.c \ misc/dirname.c misc/execv.c misc/execve.c misc/execvp.c misc/execvpe.c \ misc/feclearexcept.c misc/fegetenv.c misc/fegetexceptflag.c misc/fegetround.c misc/feholdexcept.c \ misc/feraiseexcept.c misc/fesetenv.c misc/fesetexceptflag.c misc/fesetround.c misc/fetestexcept.c \ diff --git a/mingw-w64-crt/lib-common/msvcrt.def.in b/mingw-w64-crt/lib-common/msvcrt.def.in index bc9c0c63..1c4f4089 100644 --- a/mingw-w64-crt/lib-common/msvcrt.def.in +++ b/mingw-w64-crt/lib-common/msvcrt.def.in @@ -456,8 +456,8 @@ _cwscanf_s _cwscanf_s_l _dstbias DATA F_ARM_ANY(_daylight DATA) -F_ARM_ANY(_difftime32) -F_ARM_ANY(_difftime64) +_difftime32 F_I386(== difftime) +_difftime64 _dup _dup2 _ecvt diff --git a/mingw-w64-crt/lib32/msvcr100.def.in b/mingw-w64-crt/lib32/msvcr100.def.in index e58937d4..8bc4f514 100644 --- a/mingw-w64-crt/lib32/msvcr100.def.in +++ b/mingw-w64-crt/lib32/msvcr100.def.in @@ -805,8 +805,8 @@ _cwscanf _cwscanf_l _cwscanf_s _cwscanf_s_l -_difftime32 DATA -_difftime64 DATA +_difftime32 +_difftime64 _dosmaperr _dstbias DATA _dup diff --git a/mingw-w64-crt/lib32/msvcr80.def.in b/mingw-w64-crt/lib32/msvcr80.def.in index 4914931d..c1092e83 100644 --- a/mingw-w64-crt/lib32/msvcr80.def.in +++ b/mingw-w64-crt/lib32/msvcr80.def.in @@ -141,6 +141,8 @@ _creat _cscanf _ctype DATA _cwait +_difftime32 +_difftime64 _dstbias DATA _dup _dup2 diff --git a/mingw-w64-crt/lib32/msvcr90.def.in b/mingw-w64-crt/lib32/msvcr90.def.in index 182ec506..ada4f638 100644 --- a/mingw-w64-crt/lib32/msvcr90.def.in +++ b/mingw-w64-crt/lib32/msvcr90.def.in @@ -431,8 +431,8 @@ _cwscanf_l _cwscanf_s _cwscanf_s_l _decode_pointer DATA -_difftime32 DATA -_difftime64 DATA +_difftime32 +_difftime64 _dosmaperr _dstbias DATA _dup diff --git a/mingw-w64-crt/lib64/msvcr100.def.in b/mingw-w64-crt/lib64/msvcr100.def.in index c081fea2..5faa3619 100644 --- a/mingw-w64-crt/lib64/msvcr100.def.in +++ b/mingw-w64-crt/lib64/msvcr100.def.in @@ -763,8 +763,8 @@ _cwscanf _cwscanf_l _cwscanf_s _cwscanf_s_l -_difftime32 DATA -_difftime64 DATA +_difftime32 +_difftime64 _dosmaperr _dstbias DATA _dup diff --git a/mingw-w64-crt/lib64/msvcr80.def.in b/mingw-w64-crt/lib64/msvcr80.def.in index 8b900603..6c6a5518 100644 --- a/mingw-w64-crt/lib64/msvcr80.def.in +++ b/mingw-w64-crt/lib64/msvcr80.def.in @@ -231,6 +231,8 @@ _ctype _cwait _cwprintf _cwscanf +_difftime32 +_difftime64 _dstbias DATA _dup _dup2 diff --git a/mingw-w64-crt/lib64/msvcr90.def.in b/mingw-w64-crt/lib64/msvcr90.def.in index 2ff5050b..14923195 100644 --- a/mingw-w64-crt/lib64/msvcr90.def.in +++ b/mingw-w64-crt/lib64/msvcr90.def.in @@ -379,8 +379,8 @@ _cwscanf_l _cwscanf_s _cwscanf_s_l _decode_pointer DATA -_difftime32 DATA -_difftime64 DATA +_difftime32 +_difftime64 _dosmaperr _dstbias DATA _dup diff --git a/mingw-w64-crt/misc/difftime.c b/mingw-w64-crt/misc/difftime.c deleted file mode 100644 index 5d49f529..00000000 --- a/mingw-w64-crt/misc/difftime.c +++ /dev/null @@ -1,21 +0,0 @@ -#define __CRT__NO_INLINE -#include <time.h> -#include <memory.h> - -/* FIXME: Relying on _USE_32BIT_TIME_T, which is a user-macro, -during CRT compilation is plainly broken. Need an appropriate -implementation to provide users the ability of compiling the -CRT only with 32-bit time_t behavior. */ - -#ifndef _USE_32BIT_TIME_T -double __cdecl difftime(time_t _Time1,time_t _Time2) -{ - return _difftime64(_Time1,_Time2); -} -#else -double __cdecl difftime(time_t _Time1,time_t _Time2) -{ - return _difftime32(_Time1,_Time2); -} -#endif - diff --git a/mingw-w64-crt/misc/difftime32.c b/mingw-w64-crt/misc/difftime32.c deleted file mode 100644 index b8939444..00000000 --- a/mingw-w64-crt/misc/difftime32.c +++ /dev/null @@ -1,9 +0,0 @@ -#include <time.h> - -double __cdecl _difftime32(__time32_t _Time1,__time32_t _Time2) -{ - __time32_t r = _Time1 - _Time2; - if (r > _Time1) - return -((double) (_Time2 - _Time1)); - return (double) r; -} diff --git a/mingw-w64-crt/misc/difftime64.c b/mingw-w64-crt/misc/difftime64.c deleted file mode 100644 index 54f9a12a..00000000 --- a/mingw-w64-crt/misc/difftime64.c +++ /dev/null @@ -1,9 +0,0 @@ -#include <time.h> - -double __cdecl _difftime64(__time64_t _Time1,__time64_t _Time2) -{ - __time64_t r = _Time1 - _Time2; - if (r > _Time1) - return -((double) (_Time2 - _Time1)); - return (double) r; -} diff --git a/mingw-w64-headers/crt/time.h b/mingw-w64-headers/crt/time.h index f0a83797..10a0fd4c 100644 --- a/mingw-w64-headers/crt/time.h +++ b/mingw-w64-headers/crt/time.h @@ -134,7 +134,7 @@ extern "C" { char *__cdecl _ctime32(const __time32_t *_Time) __MINGW_ATTRIB_DEPRECATED_SEC_WARN; _SECIMP errno_t __cdecl _ctime32_s (char *_Buf,size_t _SizeInBytes,const __time32_t *_Time); clock_t __cdecl clock(void); - double __cdecl _difftime32(__time32_t _Time1,__time32_t _Time2); + _CRTIMP double __cdecl _difftime32(__time32_t _Time1,__time32_t _Time2); struct tm *__cdecl _gmtime32(const __time32_t *_Time) __MINGW_ATTRIB_DEPRECATED_SEC_WARN; _SECIMP errno_t __cdecl _gmtime32_s (struct tm *_Tm,const __time32_t *_Time); struct tm *__cdecl _localtime32(const __time32_t *_Time) __MINGW_ATTRIB_DEPRECATED_SEC_WARN; @@ -159,7 +159,7 @@ extern "C" { void __cdecl _tzset(void); #endif - double __cdecl _difftime64(__time64_t _Time1,__time64_t _Time2); + _CRTIMP double __cdecl _difftime64(__time64_t _Time1,__time64_t _Time2); _CRTIMP char *__cdecl _ctime64(const __time64_t *_Time) __MINGW_ATTRIB_DEPRECATED_SEC_WARN; _SECIMP errno_t __cdecl _ctime64_s (char *_Buf,size_t _SizeInBytes,const __time64_t *_Time); _CRTIMP struct tm *__cdecl _gmtime64(const __time64_t *_Time) __MINGW_ATTRIB_DEPRECATED_SEC_WARN; @@ -221,8 +221,6 @@ extern "C" { #define __TIME_INLINE __CRT_INLINE #endif #if !defined(_USE_32BIT_TIME_T) -__TIME_INLINE double __cdecl difftime(time_t _Time1,time_t _Time2) - { return _difftime64(_Time1,_Time2); } __TIME_INLINE char *__cdecl ctime(const time_t *_Time) { return _ctime64(_Time); } __TIME_INLINE struct tm *__cdecl gmtime(const time_t *_Time) { return _gmtime64(_Time); } __TIME_INLINE struct tm *__cdecl localtime(const time_t *_Time) { return _localtime64(_Time); } @@ -230,8 +228,6 @@ __TIME_INLINE time_t __cdecl mktime(struct tm *_Tm) { return _mktime64(_Tm); } __TIME_INLINE time_t __cdecl _mkgmtime(struct tm *_Tm) { return _mkgmtime64(_Tm); } __TIME_INLINE time_t __cdecl time(time_t *_Time) { return _time64(_Time); } #else -__TIME_INLINE double __cdecl difftime(time_t _Time1,time_t _Time2) - { return _difftime32(_Time1,_Time2); } __TIME_INLINE char *__cdecl ctime(const time_t *_Time) { return _ctime32(_Time); } __TIME_INLINE struct tm *__cdecl localtime(const time_t *_Time) { return _localtime32(_Time); } __TIME_INLINE time_t __cdecl mktime(struct tm *_Tm) { return _mktime32(_Tm); } @@ -244,10 +240,12 @@ __TIME_INLINE time_t __cdecl time(time_t *_Time) { return _time32(_Time); } __forceinline errno_t __cdecl localtime_s(struct tm *_Tm,const time_t *_Time) { return _localtime32_s(_Tm,_Time); } __forceinline errno_t __cdecl gmtime_s(struct tm *_Tm, const time_t *_Time) { return _gmtime32_s(_Tm, _Time); } __forceinline errno_t __cdecl ctime_s(char *_Buf,size_t _SizeInBytes,const time_t *_Time) { return _ctime32_s(_Buf,_SizeInBytes,_Time); } +__forceinline double __cdecl difftime(time_t _Time1,time_t _Time2) { return _difftime64(_Time1,_Time2); } #else __forceinline errno_t __cdecl localtime_s(struct tm *_Tm,const time_t *_Time) { return _localtime64_s(_Tm,_Time); } __forceinline errno_t __cdecl gmtime_s(struct tm *_Tm, const time_t *_Time) { return _gmtime64_s(_Tm, _Time); } __forceinline errno_t __cdecl ctime_s(char *_Buf,size_t _SizeInBytes,const time_t *_Time) { return _ctime64_s(_Buf,_SizeInBytes,_Time); } +__forceinline double __cdecl difftime(time_t _Time1,time_t _Time2) { return _difftime32(_Time1,_Time2); } #endif #endif /* !RC_INVOKED */
_______________________________________________ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public