emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] trunk r115827: * lisp.h (EMACS_INT): Configure based on IN


From: Paul Eggert
Subject: [Emacs-diffs] trunk r115827: * lisp.h (EMACS_INT): Configure based on INTPTR_MAX, not LONG_MAX.
Date: Wed, 01 Jan 2014 19:28:02 +0000
User-agent: Bazaar (2.6b2)

------------------------------------------------------------
revno: 115827
revision-id: address@hidden
parent: address@hidden
committer: Paul Eggert <address@hidden>
branch nick: trunk
timestamp: Wed 2014-01-01 11:27:41 -0800
message:
  * 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.
modified:
  src/ChangeLog                  changelog-20091113204419-o5vbwnq5f7feedwu-1438
  src/lisp.h                     lisp.h-20091113204419-o5vbwnq5f7feedwu-253
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog     2014-01-01 17:44:48 +0000
+++ b/src/ChangeLog     2014-01-01 19:27:41 +0000
@@ -1,3 +1,9 @@
+2014-01-01  Paul Eggert  <address@hidden>
+
+       * 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  <address@hidden>
 
        * search.c (newline_cache_on_off, find_newline): In indirect

=== modified file 'src/lisp.h'
--- a/src/lisp.h        2014-01-01 07:43:34 +0000
+++ b/src/lisp.h        2014-01-01 19:27:41 +0000
@@ -63,21 +63,25 @@
    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))
+# 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"
-# elif INT_MAX < LONG_MAX
-typedef long int EMACS_INT;
-typedef unsigned long EMACS_UINT;
-#  define EMACS_INT_MAX LONG_MAX
-#  define pI "l"
 # 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
 


reply via email to

[Prev in Thread] Current Thread [Next in Thread]