Only msvcrt.dll exports the i64 suffix
Make _(w|f)?stat* alias _(w|f)?stat* _(w|f)?stat*32 on 32bits
Make _(w|f)?stat* alias _(w|f)?stat* _(w|f)?stat*64i32 on 64bits
Do not use local definition (w|f)hen 64i32 version is already exported
---
 mingw-w64-crt/Makefile.am        |    2 +-
 mingw-w64-crt/lib32/msvcr100.def |    9 +++++---
 mingw-w64-crt/lib32/msvcr110.def |    3 +++
 mingw-w64-crt/lib32/msvcr80.def  |   21 +++++++++++++-----
 mingw-w64-crt/lib32/msvcr90.def  |    9 +++++---
 mingw-w64-crt/lib32/msvcr90d.def |    3 +++
 mingw-w64-crt/lib32/msvcrt.def   |   11 ++++++----
 mingw-w64-crt/lib64/msvcr100.def |    9 +++++---
 mingw-w64-crt/lib64/msvcr110.def |    3 +++
 mingw-w64-crt/lib64/msvcr80.def  |   15 ++++++++++---
 mingw-w64-crt/lib64/msvcr90.def  |    9 +++++---
 mingw-w64-crt/lib64/msvcr90d.def |    3 +++
 mingw-w64-crt/lib64/msvcrt.def   |    9 +++++---
 mingw-w64-crt/stdio/_fstati64.c  |   45 --------------------------------------
 mingw-w64-crt/stdio/_stati64.c   |   45 --------------------------------------
 mingw-w64-crt/stdio/_wstati64.c  |   45 --------------------------------------
 16 files changed, 77 insertions(+), 164 deletions(-)
 delete mode 100755 mingw-w64-crt/stdio/_fstati64.c
 delete mode 100755 mingw-w64-crt/stdio/_stati64.c
 delete mode 100755 mingw-w64-crt/stdio/_wstati64.c

diff --git a/mingw-w64-crt/Makefile.am b/mingw-w64-crt/Makefile.am
index efbe3ea..cbaf238 100644
--- a/mingw-w64-crt/Makefile.am
+++ b/mingw-w64-crt/Makefile.am
@@ -200,7 +200,7 @@ src_libmingwex=\
   stdio/vfscanf2.S         stdio/vfwscanf2.S         stdio/vscanf2.S          
stdio/vsscanf2.S          stdio/vswscanf2.S \
   stdio/vwscanf2.S         \
   stdio/_Exit.c            stdio/_findfirst64i32.c   stdio/_findnext64i32.c   
stdio/_fstat.c \
-  stdio/_fstat64i32.c stdio/_fstati64.c stdio/_stati64.c stdio/_wstati64.c \
+  stdio/_fstat64i32.c                                                      \
   stdio/_ftime.c            stdio/_getc_nolock.c     stdio/_getwc_nolock.c     
stdio/_putc_nolock.c    \
   stdio/_putwc_nolock.c    stdio/_stat.c             stdio/_stat64i32.c       
stdio/_wfindfirst64i32.c  stdio/_wfindnext64i32.c \
   stdio/_wstat.c           stdio/_wstat64i32.c       stdio/asprintf.c         
stdio/atoll.c             stdio/fgetpos64.c       \
diff --git a/mingw-w64-crt/lib32/msvcr100.def b/mingw-w64-crt/lib32/msvcr100.def
index 4cae46a..2d11a06 100644
--- a/mingw-w64-crt/lib32/msvcr100.def
+++ b/mingw-w64-crt/lib32/msvcr100.def
@@ -882,9 +882,10 @@ _fseeki64 DATA
 _fseeki64_nolock
 _fsopen
 _fstat32
+_fstat == _fstat32
 _fstat32i64
 _fstat64
-_fstat64i32 DATA
+_fstat64i32
 _ftell_nolock
 _ftelli64 DATA
 _ftelli64_nolock
@@ -1358,9 +1359,10 @@ _sprintf_s_l
 _sscanf_l
 _sscanf_s_l
 _stat32
+_stat == _stat32
 _stat32i64
 _stat64
-_stat64i32 DATA
+_stat64i32
 _statusfp
 _statusfp2
 _strcoll_l
@@ -1633,9 +1635,10 @@ _wspawnvpe
 _wsplitpath
 _wsplitpath_s
 _wstat32
+_wstat == _wstat32
 _wstat32i64
 _wstat64
-_wstat64i32 DATA
+_wstat64i32
 _wstrdate
 _wstrdate_s
 _wstrtime
diff --git a/mingw-w64-crt/lib32/msvcr110.def b/mingw-w64-crt/lib32/msvcr110.def
index a3f1952..fc0cc78 100644
--- a/mingw-w64-crt/lib32/msvcr110.def
+++ b/mingw-w64-crt/lib32/msvcr110.def
@@ -1008,6 +1008,7 @@ _fstat32
 _fstat32i64
 _fstat64
 _fstat64i32
+_fstat == _fstat32
 _ftell_nolock
 _ftelli64
 _ftelli64_nolock
@@ -1494,6 +1495,7 @@ _stat32
 _stat32i64
 _stat64
 _stat64i32
+_stat == _stat32
 _statusfp
 _statusfp2
 _strcoll_l
@@ -1769,6 +1771,7 @@ _wstat32
 _wstat32i64
 _wstat64
 _wstat64i32
+_wstat == _wstat32
 _wstrdate
 _wstrdate_s
 _wstrtime
diff --git a/mingw-w64-crt/lib32/msvcr80.def b/mingw-w64-crt/lib32/msvcr80.def
index c09a404..6bb2ddf 100644
--- a/mingw-w64-crt/lib32/msvcr80.def
+++ b/mingw-w64-crt/lib32/msvcr80.def
@@ -188,7 +188,11 @@ _fpreset DATA
 _fputchar
 _fputwchar
 _fsopen
-_fstat
+_fstat32
+_fstat == _fstat32
+_fstat32i64
+_fstat64
+_fstat64i32
 _ftime
 _ftol
 _fullpath
@@ -393,7 +397,11 @@ _spawnve
 _spawnvp
 _spawnvpe
 _splitpath
-_stat
+_stat32
+_stat == _stat32
+_stat32i64
+_stat64
+_stat64i32
 _statusfp
 _strcmpi
 _strdate
@@ -505,7 +513,11 @@ _wspawnve
 _wspawnvp
 _wspawnvpe
 _wsplitpath
-_wstat
+_wstat32
+_wstat == _wstat32
+_wstat32i64
+_wstat64
+_wstat64i32
 _wstrdate
 _wstrtime
 _wsystem
@@ -728,7 +740,6 @@ _chkesp
 _ctime64
 _findfirst64
 _findnext64
-_fstat64
 _ftime64
 _futime64
 _gmtime64
@@ -736,13 +747,11 @@ _localtime64
 _mbcasemap
 _mktime64
 _osplatform    DATA
-_stat64
 _time64
 _utime64
 _wctime64
 _wfindfirst64
 _wfindnext64
-_wstat64
 _wutime64
 ; msvcr70.dll amd later
 __buffer_overrun
diff --git a/mingw-w64-crt/lib32/msvcr90.def b/mingw-w64-crt/lib32/msvcr90.def
index 367af5f..c872d62 100644
--- a/mingw-w64-crt/lib32/msvcr90.def
+++ b/mingw-w64-crt/lib32/msvcr90.def
@@ -509,9 +509,10 @@ _fseeki64 DATA
 _fseeki64_nolock
 _fsopen
 _fstat32
+_fstat == _fstat32
 _fstat32i64
 _fstat64
-_fstat64i32 DATA
+_fstat64i32
 _ftell_nolock
 _ftelli64 DATA
 _ftelli64_nolock
@@ -992,9 +993,10 @@ _sprintf_s_l
 _sscanf_l
 _sscanf_s_l
 _stat32
+_stat == _stat32
 _stat32i64
 _stat64
-_stat64i32 DATA
+_stat64i32
 _statusfp
 _statusfp2
 _strcoll_l
@@ -1267,9 +1269,10 @@ _wspawnvpe
 _wsplitpath
 _wsplitpath_s
 _wstat32
+_wstat == _wstat32
 _wstat32i64
 _wstat64
-_wstat64i32 DATA
+_wstat64i32
 _wstrdate
 _wstrdate_s
 _wstrtime
diff --git a/mingw-w64-crt/lib32/msvcr90d.def b/mingw-w64-crt/lib32/msvcr90d.def
index 16c8e36..7fcad72 100644
--- a/mingw-w64-crt/lib32/msvcr90d.def
+++ b/mingw-w64-crt/lib32/msvcr90d.def
@@ -569,6 +569,7 @@ _fseeki64
 _fseeki64_nolock
 _fsopen
 _fstat32
+_fstat == _fstat32
 _fstat32i64
 _fstat64
 _fstat64i32
@@ -1056,6 +1057,7 @@ _sprintf_s_l
 _sscanf_l
 _sscanf_s_l
 _stat32
+_stat == _stat32
 _stat32i64
 _stat64
 _stat64i32
@@ -1338,6 +1340,7 @@ _wspawnvpe
 _wsplitpath
 _wsplitpath_s
 _wstat32
+_wstat == _wstat32
 _wstat32i64
 _wstat64
 _wstat64i32
diff --git a/mingw-w64-crt/lib32/msvcrt.def b/mingw-w64-crt/lib32/msvcrt.def
index 171d446..25843ab 100644
--- a/mingw-w64-crt/lib32/msvcrt.def
+++ b/mingw-w64-crt/lib32/msvcrt.def
@@ -189,7 +189,8 @@ _fputchar
 _fputwchar
 _fsopen
 _fstat
-; _fstati64 replaced by libmingwex implementation
+_fstat32 == _fstat
+_fstati64
 _ftime
 _ftol
 _fullpath
@@ -394,7 +395,9 @@ _spawnvp
 _spawnvpe
 _splitpath
 _stat
-; _stati64 replaced by libmingwex implementation
+_stat64
+_stati64
+_stat32 == _stat
 _statusfp
 _strcmpi
 _strdate
@@ -507,7 +510,8 @@ _wspawnvp
 _wspawnvpe
 _wsplitpath
 _wstat
-; _wstati64  replaced by libmingwex implementation
+_wstati64
+_wstat32 == _wstat
 _wstrdate
 _wstrtime
 _wsystem
@@ -739,7 +743,6 @@ _localtime64
 _mbcasemap
 _mktime64
 _osplatform    DATA
-_stat64
 _time32 == time
 _time64
 _utime64
diff --git a/mingw-w64-crt/lib64/msvcr100.def b/mingw-w64-crt/lib64/msvcr100.def
index 000a92b..b1b491c 100644
--- a/mingw-w64-crt/lib64/msvcr100.def
+++ b/mingw-w64-crt/lib64/msvcr100.def
@@ -839,9 +839,10 @@ _fseeki64 DATA
 _fseeki64_nolock
 _fsopen
 _fstat32
+_wstat == _wstat64i32
 _fstat32i64
 _fstat64
-_fstat64i32 DATA
+_fstat64i32
 _ftell_nolock
 _ftelli64 DATA
 _ftelli64_nolock
@@ -1306,9 +1307,10 @@ _sprintf_s_l
 _sscanf_l
 _sscanf_s_l
 _stat32
+_stat == _stat64i32
 _stat32i64
 _stat64
-_stat64i32 DATA
+_stat64i32
 _statusfp
 _strcoll_l
 _strdate
@@ -1580,9 +1582,10 @@ _wspawnvpe
 _wsplitpath
 _wsplitpath_s
 _wstat32
+_wstat == _wstat64i32
 _wstat32i64
 _wstat64
-_wstat64i32 DATA
+_wstat64i32
 _wstrdate
 _wstrdate_s
 _wstrtime
diff --git a/mingw-w64-crt/lib64/msvcr110.def b/mingw-w64-crt/lib64/msvcr110.def
index 77760a6..f419acd 100644
--- a/mingw-w64-crt/lib64/msvcr110.def
+++ b/mingw-w64-crt/lib64/msvcr110.def
@@ -964,6 +964,7 @@ _fseeki64
 _fseeki64_nolock
 _fsopen
 _fstat32
+_fstat == _fstat64i32
 _fstat32i64
 _fstat64
 _fstat64i32
@@ -1430,6 +1431,7 @@ _sprintf_s_l
 _sscanf_l
 _sscanf_s_l
 _stat32
+_stat == _stat64i32
 _stat32i64
 _stat64
 _stat64i32
@@ -1704,6 +1706,7 @@ _wspawnvpe
 _wsplitpath
 _wsplitpath_s
 _wstat32
+_wstat == _wstat64i32
 _wstat32i64
 _wstat64
 _wstat64i32
diff --git a/mingw-w64-crt/lib64/msvcr80.def b/mingw-w64-crt/lib64/msvcr80.def
index a8fdd00..80ffe83 100644
--- a/mingw-w64-crt/lib64/msvcr80.def
+++ b/mingw-w64-crt/lib64/msvcr80.def
@@ -279,8 +279,11 @@ _fpreset DATA
 _fputchar
 _fputwchar
 _fsopen
-_fstat
+_fstat32
+_fstat == _fstat64i32
 _fstat64
+_fstat32i64
+_fstat64i32
 _ftime
 _ftime64
 _fullpath
@@ -496,8 +499,11 @@ _spawnve
 _spawnvp
 _spawnvpe
 _splitpath
-_stat
+_stat32
+_stat == _stat64i32
 _stat64
+_stat32i64
+_stat64i32
 _statusfp
 _strcmpi
 _strdate
@@ -624,8 +630,11 @@ _wspawnve
 _wspawnvp
 _wspawnvpe
 _wsplitpath
-_wstat
+_wstat32
+_wstat == _wstat64i32
 _wstat64
+_wstat32i64
+_wstat64i32
 _wstrdate
 _wstrtime
 _wsystem
diff --git a/mingw-w64-crt/lib64/msvcr90.def b/mingw-w64-crt/lib64/msvcr90.def
index 6afa032..fefa301 100644
--- a/mingw-w64-crt/lib64/msvcr90.def
+++ b/mingw-w64-crt/lib64/msvcr90.def
@@ -456,9 +456,10 @@ _fseeki64 DATA
 _fseeki64_nolock
 _fsopen
 _fstat32
+_fstat == _fstat64i32
 _fstat32i64
 _fstat64
-_fstat64i32 DATA
+_fstat64i32
 _ftell_nolock
 _ftelli64 DATA
 _ftelli64_nolock
@@ -926,9 +927,10 @@ _sprintf_s_l
 _sscanf_l
 _sscanf_s_l
 _stat32
+_stat == _stat64i32
 _stat32i64
 _stat64
-_stat64i32 DATA
+_stat64i32
 _statusfp
 _strcoll_l
 _strdate
@@ -1200,9 +1202,10 @@ _wspawnvpe
 _wsplitpath
 _wsplitpath_s
 _wstat32
+_wstat == _wstat64i32
 _wstat32i64
 _wstat64
-_wstat64i32 DATA
+_wstat64i32
 _wstrdate
 _wstrdate_s
 _wstrtime
diff --git a/mingw-w64-crt/lib64/msvcr90d.def b/mingw-w64-crt/lib64/msvcr90d.def
index 7389adb..43b8f61 100644
--- a/mingw-w64-crt/lib64/msvcr90d.def
+++ b/mingw-w64-crt/lib64/msvcr90d.def
@@ -510,6 +510,7 @@ _fseeki64
 _fseeki64_nolock
 _fsopen
 _fstat32
+_fstat == _fstat64i32
 _fstat32i64
 _fstat64
 _fstat64i32
@@ -984,6 +985,7 @@ _sprintf_s_l
 _sscanf_l
 _sscanf_s_l
 _stat32
+_stat == _stat64i32
 _stat32i64
 _stat64
 _stat64i32
@@ -1265,6 +1267,7 @@ _wspawnvpe
 _wsplitpath
 _wsplitpath_s
 _wstat32
+_wstat == _wstat64i32
 _wstat32i64
 _wstat64
 _wstat64i32
diff --git a/mingw-w64-crt/lib64/msvcrt.def b/mingw-w64-crt/lib64/msvcrt.def
index b2daed7..dbfcfe9 100644
--- a/mingw-w64-crt/lib64/msvcrt.def
+++ b/mingw-w64-crt/lib64/msvcrt.def
@@ -316,7 +316,8 @@ _fscanf_s_l
 _fsopen
 _fstat
 _fstat64
-; _fstati64 Replaced by libmingwex implementation.
+_fstati64
+_fstat64i32 == _fstat
 _ftime
 _ftime32_s
 _ftime64
@@ -728,7 +729,8 @@ _sscanf_l
 _sscanf_s_l
 _stat
 _stat64
-; _stati64  replaced by libmingwex implementation
+_stati64
+_stat64i32 == _stat
 _statusfp
 _strcmpi
 _strcoll_l
@@ -989,7 +991,8 @@ _wsplitpath
 _wsplitpath_s
 _wstat
 _wstat64
-; _wstati64 replaced by libmingwex implementation
+_wstati64
+_wstat64i32 == _wstat
 _wstrdate
 ; _wstrdate_s replaced by emu
 _wstrtime
diff --git a/mingw-w64-crt/stdio/_fstati64.c b/mingw-w64-crt/stdio/_fstati64.c
deleted file mode 100755
index 3200827..0000000
--- a/mingw-w64-crt/stdio/_fstati64.c
+++ /dev/null
@@ -1,45 +0,0 @@
-/**
- * This file is part of the mingw-w64 runtime package.
- * No warranty is given; refer to the file DISCLAIMER within this package.
- */
-
-#define __CRT__NO_INLINE
-#include <sys/stat.h>
-
-#undef _fstati64
-#if !defined(_USE_32BIT_TIME_T)
-int __cdecl
-_fstati64(int _Desc,struct _stat64 *_Stat);
-int __cdecl
-_fstati64(int _Desc,struct _stat64 *_Stat)
-{
-  return _fstat64(_Desc, _Stat);
-}
-int (*__MINGW_IMP_SYMBOL(_fstati64))(int, struct _stat64 *) = &_fstati64;
-#else
-int __cdecl
-_fstati64(int _Desc,struct _stat32i64 *_Stat);
-int __cdecl
-_fstati64(int _Desc,struct _stat32i64 *_Stat)
-{
-  struct _stat32 st;
-  int ret=_fstat32(_Desc,&st);
-  if (ret == -1) {
-    memset(_Stat,0,sizeof(struct _stat32i64));
-    return -1;
-  }
-  _Stat->st_dev=st.st_dev;
-  _Stat->st_ino=st.st_ino;
-  _Stat->st_mode=st.st_mode;
-  _Stat->st_nlink=st.st_nlink;
-  _Stat->st_uid=st.st_uid;
-  _Stat->st_gid=st.st_gid;
-  _Stat->st_rdev=st.st_rdev;
-  _Stat->st_size=(_off_t) st.st_size;
-  _Stat->st_atime=st.st_atime;
-  _Stat->st_mtime=st.st_mtime;
-  _Stat->st_ctime=st.st_ctime;
-  return ret;
-}
-int (*__MINGW_IMP_SYMBOL(_fstati64))(int, struct _stat32i64 *) = &_fstati64;
-#endif
diff --git a/mingw-w64-crt/stdio/_stati64.c b/mingw-w64-crt/stdio/_stati64.c
deleted file mode 100755
index c3e9791..0000000
--- a/mingw-w64-crt/stdio/_stati64.c
+++ /dev/null
@@ -1,45 +0,0 @@
-/**
- * This file is part of the mingw-w64 runtime package.
- * No warranty is given; refer to the file DISCLAIMER within this package.
- */
-
-#define __CRT__NO_INLINE
-#include <sys/stat.h>
-
-#undef _stati64
-#if !defined(_USE_32BIT_TIME_T)
-int __cdecl
-_stati64(const char *_Name,struct _stat64 *_Stat);
-int __cdecl
-_stati64(const char *_Name,struct _stat64 *_Stat)
-{
-  return _stat64(_Name, _Stat);
-}
-int (*__MINGW_IMP_SYMBOL(_stati64))(const char *, struct _stat64 *) = 
&_stati64;
-#else
-int __cdecl
-_stati64(const char *_Name,struct _stat32i64 *_Stat);
-int __cdecl
-_stati64(const char *_Name,struct _stat32i64 *_Stat)
-{
-  struct _stat32 st;
-  int ret=_stat32(_Name,&st);
-  if (ret == -1) {
-    memset(_Stat,0,sizeof(struct _stat32i64));
-    return -1;
-  }
-  _Stat->st_dev=st.st_dev;
-  _Stat->st_ino=st.st_ino;
-  _Stat->st_mode=st.st_mode;
-  _Stat->st_nlink=st.st_nlink;
-  _Stat->st_uid=st.st_uid;
-  _Stat->st_gid=st.st_gid;
-  _Stat->st_rdev=st.st_rdev;
-  _Stat->st_size=(_off_t) st.st_size;
-  _Stat->st_atime=st.st_atime;
-  _Stat->st_mtime=st.st_mtime;
-  _Stat->st_ctime=st.st_ctime;
-  return ret;
-}
-int (*__MINGW_IMP_SYMBOL(_stati64))(const char *, struct _stat32i64 *) = 
&_stati64;
-#endif
diff --git a/mingw-w64-crt/stdio/_wstati64.c b/mingw-w64-crt/stdio/_wstati64.c
deleted file mode 100755
index 9a73d57..0000000
--- a/mingw-w64-crt/stdio/_wstati64.c
+++ /dev/null
@@ -1,45 +0,0 @@
-/**
- * This file is part of the mingw-w64 runtime package.
- * No warranty is given; refer to the file DISCLAIMER within this package.
- */
-
-#define __CRT__NO_INLINE
-#include <sys/stat.h>
-
-#undef _wstati64
-#if !defined(_USE_32BIT_TIME_T)
-int __cdecl
-_wstati64(const wchar_t *_Name,struct _stat64 *_Stat);
-int __cdecl
-_wstati64(const wchar_t *_Name,struct _stat64 *_Stat)
-{
-  return _wstat64(_Name, _Stat);
-}
-int (*__MINGW_IMP_SYMBOL(_wstati64))(const wchar_t *, struct _stat64 *) = 
&_wstati64;
-#else
-int __cdecl
-_wstati64(const wchar_t *_Name,struct _stat32i64 *_Stat);
-int __cdecl
-_wstati64(const wchar_t *_Name,struct _stat32i64 *_Stat)
-{
-  struct _stat32 st;
-  int ret=_wstat32(_Name,&st);
-  if (ret == -1) {
-    memset(_Stat,0,sizeof(struct _stat32i64));
-    return -1;
-  }
-  _Stat->st_dev=st.st_dev;
-  _Stat->st_ino=st.st_ino;
-  _Stat->st_mode=st.st_mode;
-  _Stat->st_nlink=st.st_nlink;
-  _Stat->st_uid=st.st_uid;
-  _Stat->st_gid=st.st_gid;
-  _Stat->st_rdev=st.st_rdev;
-  _Stat->st_size=(_off_t) st.st_size;
-  _Stat->st_atime=st.st_atime;
-  _Stat->st_mtime=st.st_mtime;
-  _Stat->st_ctime=st.st_ctime;
-  return ret;
-}
-int (*__MINGW_IMP_SYMBOL(_wstati64))(const wchar_t *, struct _stat32i64 *) = 
&_wstati64;
-#endif
-- 
1.7.10.4

------------------------------------------------------------------------------
Minimize network downtime and maximize team effectiveness.
Reduce network management and security costs.Learn how to hire 
the most talented Cisco Certified professionals. Visit the 
Employer Resources Portal
http://www.cisco.com/web/learning/employer_resources/index.html
_______________________________________________
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to