All those inline functions were just simple function redirections.
Instead of them declare all of those functions via __MINGW_ASM_CALL macro
as direct symbol redirection.
---
mingw-w64-headers/crt/sys/utime.h | 45 +++++++++----------------------
1 file changed, 13 insertions(+), 32 deletions(-)
diff --git a/mingw-w64-headers/crt/sys/utime.h
b/mingw-w64-headers/crt/sys/utime.h
index df0c701a00d5..7bb353ca03ed 100644
--- a/mingw-w64-headers/crt/sys/utime.h
+++ b/mingw-w64-headers/crt/sys/utime.h
@@ -91,43 +91,24 @@ extern "C" {
_CRTIMP int __cdecl _wutime64(const wchar_t *_Filename,struct __utimbuf64
*_Time);
#ifndef RC_INVOKED
-int __cdecl _utime(const char *,struct _utimbuf *);
-int __cdecl _futime(int,struct _utimbuf *);
-int __cdecl _wutime(const wchar_t *,struct _utimbuf *);
-#ifndef __CRT__NO_INLINE
+
#ifdef _USE_32BIT_TIME_T
-__CRT_INLINE int __cdecl _utime(const char *_Filename,struct _utimbuf
*_Utimbuf) {
- return _utime32(_Filename,(struct __utimbuf32 *)_Utimbuf);
-}
-__CRT_INLINE int __cdecl _futime(int _Desc,struct _utimbuf *_Utimbuf) {
- return _futime32(_Desc,(struct __utimbuf32 *)_Utimbuf);
-}
-__CRT_INLINE int __cdecl _wutime(const wchar_t *_Filename,struct _utimbuf
*_Utimbuf) {
- return _wutime32(_Filename,(struct __utimbuf32 *)_Utimbuf);
-}
+ int __cdecl _utime(const char *_Filename,struct _utimbuf *_Utimbuf)
__MINGW_ASM_CALL(_utime32);
+ int __cdecl _futime(int _Desc,struct _utimbuf *_Utimbuf)
__MINGW_ASM_CALL(_futime32);
+ int __cdecl _wutime(const wchar_t *_Filename,struct _utimbuf *_Utimbuf)
__MINGW_ASM_CALL(_wutime32);
#else
-__CRT_INLINE int __cdecl _utime(const char *_Filename,struct _utimbuf
*_Utimbuf) {
- return _utime64(_Filename,(struct __utimbuf64 *)_Utimbuf);
-}
-__CRT_INLINE int __cdecl _futime(int _Desc,struct _utimbuf *_Utimbuf) {
- return _futime64(_Desc,(struct __utimbuf64 *)_Utimbuf);
-}
-__CRT_INLINE int __cdecl _wutime(const wchar_t *_Filename,struct _utimbuf
*_Utimbuf) {
- return _wutime64(_Filename,(struct __utimbuf64 *)_Utimbuf);
-}
+ int __cdecl _utime(const char *_Filename,struct _utimbuf *_Utimbuf)
__MINGW_ASM_CALL(_utime64);
+ int __cdecl _futime(int _Desc,struct _utimbuf *_Utimbuf)
__MINGW_ASM_CALL(_futime64);
+ int __cdecl _wutime(const wchar_t *_Filename,struct _utimbuf *_Utimbuf)
__MINGW_ASM_CALL(_wutime64);
#endif
-#endif /* !__CRT__NO_INLINE */
-
#ifndef NO_OLDNAMES
- int __cdecl utime(const char *, struct utimbuf *);
-#ifndef __CRT__NO_INLINE
-#ifndef _USE_32BIT_TIME_T
-__CRT_INLINE int __cdecl utime(const char *_Filename,struct utimbuf *_Utimbuf)
{
- return _utime64(_Filename,(struct __utimbuf64 *)_Utimbuf);
-}
-#endif /* !_USE_32BIT_TIME_T */
-#endif /* !__CRT__NO_INLINE */
+#ifdef _USE_32BIT_TIME_T
+ int __cdecl utime(const char *, struct utimbuf *) __MINGW_ASM_CALL(_utime32);
+#else
+ int __cdecl utime(const char *, struct utimbuf *) __MINGW_ASM_CALL(_utime64);
+#endif
#endif
+
#endif
#ifdef __cplusplus
--
2.20.1
_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public