]> git.eshelyaron.com Git - emacs.git/commitdiff
* lisp.h (EMACS_INT): Configure based on INTPTR_MAX, not LONG_MAX.
authorPaul Eggert <eggert@cs.ucla.edu>
Wed, 1 Jan 2014 19:27:41 +0000 (11:27 -0800)
committerPaul Eggert <eggert@cs.ucla.edu>
Wed, 1 Jan 2014 19:27:41 +0000 (11:27 -0800)
This is a cleaner way to fix the MinGW-w64 porting problem.
Check for INTPTR_MAX misconfiguration.

src/ChangeLog
src/lisp.h

index e41ccd168c685d2eba8de4186810e4ce3682e6dc..1291815a4bcf24bfdc628e0b8b47d1a51d570594 100644 (file)
@@ -1,3 +1,9 @@
+2014-01-01  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * lisp.h (EMACS_INT): Configure based on INTPTR_MAX, not LONG_MAX.
+       This is a cleaner way to fix the MinGW-w64 porting problem.
+       Check for INTPTR_MAX misconfiguration.
+
 2014-01-01  Eli Zaretskii  <eliz@gnu.org>
 
        * search.c (newline_cache_on_off, find_newline): In indirect
index 2a6d996a1abf56832a51f7c3da3bb142818962f1..043e5b13f6b3cb5d87d0be9af806a806d7dac65a 100644 (file)
@@ -63,21 +63,25 @@ INLINE_HEADER_BEGIN
    pI - printf length modifier for EMACS_INT
    EMACS_UINT - unsigned variant of EMACS_INT */
 #ifndef EMACS_INT_MAX
-# if LONG_MAX < LLONG_MAX && (defined(WIDE_EMACS_INT) || defined(_WIN64))
-typedef long long int EMACS_INT;
-typedef unsigned long long int EMACS_UINT;
-#  define EMACS_INT_MAX LLONG_MAX
-#  define pI "ll"
-# elif INT_MAX < LONG_MAX
+# if INTPTR_MAX <= 0
+#  error "INTPTR_MAX misconfigured"
+# elif INTPTR_MAX <= INT_MAX && !defined WIDE_EMACS_INT
+typedef int EMACS_INT;
+typedef unsigned int EMACS_UINT;
+#  define EMACS_INT_MAX INT_MAX
+#  define pI ""
+# elif INTPTR_MAX <= LONG_MAX && !defined WIDE_EMACS_INT
 typedef long int EMACS_INT;
 typedef unsigned long EMACS_UINT;
 #  define EMACS_INT_MAX LONG_MAX
 #  define pI "l"
+# elif INTPTR_MAX <= LLONG_MAX
+typedef long long int EMACS_INT;
+typedef unsigned long long int EMACS_UINT;
+#  define EMACS_INT_MAX LLONG_MAX
+#  define pI "ll"
 # else
-typedef int EMACS_INT;
-typedef unsigned int EMACS_UINT;
-#  define EMACS_INT_MAX INT_MAX
-#  define pI ""
+#  error "INTPTR_MAX too large"
 # endif
 #endif