aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEli Zaretskii2013-03-26 19:32:52 +0200
committerEli Zaretskii2013-03-26 19:32:52 +0200
commitbe3a31b22bb262f57954486ec40f5cbf07a9d828 (patch)
tree679ecd486130d0fbefdba70ad3e099c2841ac608
parent54e9501092ec8a87991fb3da5b1732c12b43c61e (diff)
downloademacs-be3a31b22bb262f57954486ec40f5cbf07a9d828.tar.gz
emacs-be3a31b22bb262f57954486ec40f5cbf07a9d828.zip
Fix problem with _setjmp in MinGW64-compiled Emacs.
nt/inc/ms-w32.h (USE_NO_MINGW_SETJMP_TWO_ARGS): Don't define. nt/config.nt (HAVE__SETJMP) [!_W64]: Don't define for MinGW64, as its _setjmp accepts 2 arguments.
-rw-r--r--nt/ChangeLog5
-rw-r--r--nt/config.nt6
-rw-r--r--nt/inc/ms-w32.h1
3 files changed, 10 insertions, 2 deletions
diff --git a/nt/ChangeLog b/nt/ChangeLog
index 031735edac8..6f208f2a18f 100644
--- a/nt/ChangeLog
+++ b/nt/ChangeLog
@@ -1,5 +1,10 @@
12013-03-26 Eli Zaretskii <eliz@gnu.org> 12013-03-26 Eli Zaretskii <eliz@gnu.org>
2 2
3 * inc/ms-w32.h (USE_NO_MINGW_SETJMP_TWO_ARGS): Don't define.
4
5 * config.nt (HAVE__SETJMP) [!_W64]: Don't define for MinGW64, as
6 its _setjmp accepts 2 arguments.
7
3 * addsection.c (_ANONYMOUS_UNION, _ANONYMOUS_STRUCT): Do not 8 * addsection.c (_ANONYMOUS_UNION, _ANONYMOUS_STRUCT): Do not
4 define for MinGW64. 9 define for MinGW64.
5 10
diff --git a/nt/config.nt b/nt/config.nt
index 1fe707cce2d..4f151fcad20 100644
--- a/nt/config.nt
+++ b/nt/config.nt
@@ -1143,8 +1143,12 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
1143/* Define to 1 if you have the `_ftime' function. */ 1143/* Define to 1 if you have the `_ftime' function. */
1144#undef HAVE__FTIME 1144#undef HAVE__FTIME
1145 1145
1146/* Define to 1 if _setjmp and _longjmp work. */ 1146/* Define to 1 if _setjmp and _longjmp work. MinGW64 uses a
1147 2-argument _setjmp, and setjmp is a macro defined to supply the 2nd
1148 arg correctly, so don't use _setjmp directly in that case. */
1149#ifndef _W64
1147#define HAVE__SETJMP 1 1150#define HAVE__SETJMP 1
1151#endif
1148 1152
1149/* Define to 1 if you have the `__builtin_unwind_init' function. */ 1153/* Define to 1 if you have the `__builtin_unwind_init' function. */
1150#undef HAVE___BUILTIN_UNWIND_INIT 1154#undef HAVE___BUILTIN_UNWIND_INIT
diff --git a/nt/inc/ms-w32.h b/nt/inc/ms-w32.h
index f721676f731..fd18e8fd1da 100644
--- a/nt/inc/ms-w32.h
+++ b/nt/inc/ms-w32.h
@@ -158,7 +158,6 @@ extern char *getenv ();
158 158
159#ifdef _W64 159#ifdef _W64
160/* MinGW64 specific stuff. */ 160/* MinGW64 specific stuff. */
161#define USE_NO_MINGW_SETJMP_TWO_ARGS 1
162/* Make sure 'struct timespec' and 'struct timezone' are defined. */ 161/* Make sure 'struct timespec' and 'struct timezone' are defined. */
163#include <sys/types.h> 162#include <sys/types.h>
164#include <time.h> 163#include <time.h>