summaryrefslogtreecommitdiffstats
path: root/generic
diff options
context:
space:
mode:
authorsebres <sebres@users.sourceforge.net>2019-07-12 12:18:00 (GMT)
committersebres <sebres@users.sourceforge.net>2019-07-12 12:18:00 (GMT)
commiteb8924753ecc939c45fa78ca5f3f854e213f5f01 (patch)
tree3c71aa612fba891410acd982ac3278a4683eb85f /generic
parentb2b3391857e3e0d0c9ad4805b07168c2caf29333 (diff)
parent30fc501320ef1a28a3f8630f1beabfce3a8f69f0 (diff)
downloadtcl-eb8924753ecc939c45fa78ca5f3f854e213f5f01.zip
tcl-eb8924753ecc939c45fa78ca5f3f854e213f5f01.tar.gz
tcl-eb8924753ecc939c45fa78ca5f3f854e213f5f01.tar.bz2
merge 8.6, integrate branch bug-4718b41c56, rebuild win/configure, conflicts resolved (nothreads not available for 8.7)
Diffstat (limited to 'generic')
-rw-r--r--generic/tcl.h2
-rw-r--r--generic/tclBasic.c10
2 files changed, 10 insertions, 2 deletions
diff --git a/generic/tcl.h b/generic/tcl.h
index cd194d1..f3253db 100644
--- a/generic/tcl.h
+++ b/generic/tcl.h
@@ -406,7 +406,7 @@ typedef unsigned TCL_WIDE_INT_TYPE Tcl_WideUInt;
#if defined(_WIN32)
# ifdef __BORLANDC__
typedef struct stati64 Tcl_StatBuf;
-# elif defined(_WIN64)
+# elif defined(_WIN64) || defined(__MINGW_USE_VC2005_COMPAT) || defined(_USE_64BIT_TIME_T)
typedef struct __stat64 Tcl_StatBuf;
# elif (defined(_MSC_VER) && (_MSC_VER < 1400)) || defined(_USE_32BIT_TIME_T)
typedef struct _stati64 Tcl_StatBuf;
diff --git a/generic/tclBasic.c b/generic/tclBasic.c
index 9832807..78b9f0c 100644
--- a/generic/tclBasic.c
+++ b/generic/tclBasic.c
@@ -657,7 +657,15 @@ Tcl_CreateInterp(void)
Tcl_Panic("Tcl_CallFrame must not be smaller than CallFrame");
}
-#if defined(_WIN32) && !defined(_WIN64)
+#if defined(_WIN32) && !defined(_WIN64) && !defined(_USE_64BIT_TIME_T) \
+ && !defined(__MINGW_USE_VC2005_COMPAT)
+ /* If Tcl is compiled on Win32 using -D_USE_64BIT_TIME_T or
+ * -D__MINGW_USE_VC2005_COMPAT, the result is a binary incompatible
+ * with the 'standard' build of Tcl: All extensions using Tcl_StatBuf
+ * or interal functions like TclpGetDate() need to be recompiled in
+ * the same way. Therefore, this is not officially supported.
+ * In stead, it is recommended to use Win64 or Tcl 9.0 (not released yet)
+ */
if (sizeof(time_t) != 4) {
/*NOTREACHED*/
Tcl_Panic("<time.h> is not compatible with MSVC");