diff options
| author | nijtmans@users.sourceforge.net <jan.nijtmans> | 2011-04-18 08:22:16 (GMT) |
|---|---|---|
| committer | nijtmans@users.sourceforge.net <jan.nijtmans> | 2011-04-18 08:22:16 (GMT) |
| commit | 21e2ce52035042c96cda1074c3a9b20034b752d7 (patch) | |
| tree | e6a93d747c0938c5bb1ad04b9b11a221a7a969d4 | |
| parent | 75e866b986336a600ca12bf310d649aed62596a0 (diff) | |
| parent | 6bce8e8961d7c591e8c2e0d048953c05e476bbf0 (diff) | |
| download | tcl-21e2ce52035042c96cda1074c3a9b20034b752d7.zip tcl-21e2ce52035042c96cda1074c3a9b20034b752d7.tar.gz tcl-21e2ce52035042c96cda1074c3a9b20034b752d7.tar.bz2 | |
fix for [Bug 3288345]: Wrong Tcl_StatBuf used on MinGW
| -rw-r--r-- | ChangeLog | 5 | ||||
| -rw-r--r-- | generic/tcl.h | 16 |
2 files changed, 11 insertions, 10 deletions
@@ -1,3 +1,8 @@ +2011-04-18 Jan Nijtmans <nijtmans@users.sf.net> + + * generic/tcl.h: fix for [Bug 3288345]: Wrong Tcl_StatBuf + used on MinGW. + 2011-04-16 Donal K. Fellows <dkf@users.sf.net> * generic/tclFCmd.c (TclFileAttrsCmd): Tidied up the memory management diff --git a/generic/tcl.h b/generic/tcl.h index 45da4f1..61e9a8a 100644 --- a/generic/tcl.h +++ b/generic/tcl.h @@ -352,27 +352,23 @@ typedef long LONG; */ #if !defined(TCL_WIDE_INT_TYPE)&&!defined(TCL_WIDE_INT_IS_LONG) -# if defined(__GNUC__) -# define TCL_WIDE_INT_TYPE long long -# if defined(__WIN32__) && !defined(__CYGWIN__) -# define TCL_LL_MODIFIER "I64" -# else -# define TCL_LL_MODIFIER "ll" -# endif -typedef struct stat Tcl_StatBuf; -# elif defined(__WIN32__) +# if defined(__WIN32__) # define TCL_WIDE_INT_TYPE __int64 # ifdef __BORLANDC__ typedef struct stati64 Tcl_StatBuf; # define TCL_LL_MODIFIER "L" # else /* __BORLANDC__ */ -# if _MSC_VER < 1400 || !defined(_M_IX86) +# if (defined(_MSC_VER) && (_MSC_VER < 1400)) || !defined(_M_IX86) || defined(__GNUC__) typedef struct _stati64 Tcl_StatBuf; # else typedef struct _stat64 Tcl_StatBuf; # endif /* _MSC_VER < 1400 */ # define TCL_LL_MODIFIER "I64" # endif /* __BORLANDC__ */ +# elif defined(__GNUC__) +# define TCL_WIDE_INT_TYPE long long +# define TCL_LL_MODIFIER "ll" +typedef struct stat Tcl_StatBuf; # else /* __WIN32__ */ /* * Don't know what platform it is and configure hasn't discovered what is |
