summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2011-05-05 22:55:01 -0700
committerPaul Eggert <eggert@cs.ucla.edu>2011-05-05 22:55:01 -0700
commit122b0c864338fa0c428b0ff2afbed2454dd2d1c7 (patch)
tree38320a01750cc459910177fd1bc0e1a4bd5b3a9b
parent4c4b566b11106e0dd4767340e6e7e0fc89cfd589 (diff)
downloademacs-122b0c864338fa0c428b0ff2afbed2454dd2d1c7.tar.gz
Temporarily disable wider-than-pointer EMACS_INT.
-rw-r--r--nt/ChangeLog6
-rw-r--r--nt/config.nt8
-rw-r--r--src/ChangeLog2
-rw-r--r--src/lisp.h6
4 files changed, 19 insertions, 3 deletions
diff --git a/nt/ChangeLog b/nt/ChangeLog
index f1f34bb88b5..83d13ce77c6 100644
--- a/nt/ChangeLog
+++ b/nt/ChangeLog
@@ -1,6 +1,8 @@
-2011-05-05 Paul Eggert <eggert@cs.ucla.edu>
+2011-05-06 Paul Eggert <eggert@cs.ucla.edu>
- * config.nt: Configure 64-bit integers for older compilers.
+ * config.nt: Prepare to configure 64-bit integers for older compilers.
+ However, temporarily disable this change unless the temporary
+ symbol WIDE_EMACS_INT is defined.
(EMACS_INT, BITS_PER_EMACS_INT, pI): Define these if __int64 and
"%I64d" work but long long and "%lld" do not.
diff --git a/nt/config.nt b/nt/config.nt
index b595e298996..55a8bccae19 100644
--- a/nt/config.nt
+++ b/nt/config.nt
@@ -480,11 +480,19 @@ extern char *getenv ();
#elif _MSC_VER >= 1200
+/* Temporarily disable wider-than-pointer integers until they're tested more.
+ Build with CFLAGS='-DWIDE_EMACS_INT' to try them out. */
+/* #undef WIDE_EMACS_INT */
+
+# ifdef WIDE_EMACS_INT
+
/* Use pre-C99-style 64-bit integers. */
# define EMACS_INT __int64
# define BITS_PER_EMACS_INT 64
# define pI "I64"
+# endif
+
#endif
#ifndef POINTER_TYPE
diff --git a/src/ChangeLog b/src/ChangeLog
index 755b02631f6..80baa5d131a 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -55,6 +55,8 @@
(EMACS_INT, EMACS_UINT, BITS_PER_EMACS_INT, pI): Define to 64-bit
on 32-bit hosts that have 64-bit int, so that they can access
large files.
+ However, temporarily disable this change unless the temporary
+ symbol WIDE_EMACS_INT is defined.
* lread.c, process.c: Do not include <inttypes.h>; lisp.h does it now.
diff --git a/src/lisp.h b/src/lisp.h
index bb3a8cc393c..66f5c962be8 100644
--- a/src/lisp.h
+++ b/src/lisp.h
@@ -34,9 +34,13 @@ extern void check_cons_list (void);
#define CHECK_CONS_LIST() ((void) 0)
#endif
+/* Temporarily disable wider-than-pointer integers until they're tested more.
+ Build with CFLAGS='-DWIDE_EMACS_INT' to try them out. */
+/* #undef WIDE_EMACS_INT */
+
/* These are default choices for the types to use. */
#ifndef EMACS_INT
-# if BITS_PER_LONG < BITS_PER_LONG_LONG
+# if BITS_PER_LONG < BITS_PER_LONG_LONG && defined WIDE_EMACS_INT
# define EMACS_INT long long
# define BITS_PER_EMACS_INT BITS_PER_LONG_LONG
# define pI "ll"