summaryrefslogtreecommitdiffstats
path: root/generic/tcl.h
diff options
context:
space:
mode:
authorjan.nijtmans <jan.nijtmans@noemail.net>2011-04-21 08:49:52 (GMT)
committerjan.nijtmans <jan.nijtmans@noemail.net>2011-04-21 08:49:52 (GMT)
commit98800f0eda0647431a578cb25987827538b73ec7 (patch)
tree170c82b377323ccaaa1d7543c9ca9c75ff3bf2c4 /generic/tcl.h
parentf1f623ce33f4438f754d8171b01cce4942b827a6 (diff)
parent907d92a093bacc82d868a9dbf3a434ff833fdb8d (diff)
downloadtcl-98800f0eda0647431a578cb25987827538b73ec7.zip
tcl-98800f0eda0647431a578cb25987827538b73ec7.tar.gz
tcl-98800f0eda0647431a578cb25987827538b73ec7.tar.bz2
fix for [Bug 3288345]: Wrong Tcl_StatBufused on MinGW.
Make sure that all _WIN32 compilers use exactly the same layout for Tcl_StatBuf - the one used by MSVC6 - in all situations. FossilOrigin-Name: ac3601bf0c4f9f6b4dd757a6877fe4ae03724969
Diffstat (limited to 'generic/tcl.h')
-rw-r--r--generic/tcl.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/generic/tcl.h b/generic/tcl.h
index 5e82432..73a8932 100644
--- a/generic/tcl.h
+++ b/generic/tcl.h
@@ -379,10 +379,12 @@ typedef long LONG;
typedef struct stati64 Tcl_StatBuf;
# define TCL_LL_MODIFIER "L"
# else /* __BORLANDC__ */
-# if (defined(_MSC_VER) && (_MSC_VER < 1400)) || !defined(_M_IX86) || defined(__GNUC__)
+# if defined(_WIN64)
+typedef struct _stat64 Tcl_StatBuf;
+# elif (defined(_MSC_VER) && (_MSC_VER < 1400))
typedef struct _stati64 Tcl_StatBuf;
# else
-typedef struct _stat64 Tcl_StatBuf;
+typedef struct _stat32i64 Tcl_StatBuf;
# endif /* _MSC_VER < 1400 */
# define TCL_LL_MODIFIER "I64"
# endif /* __BORLANDC__ */