summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2012-07-25 15:47:42 -0700
committerPaul Eggert <eggert@cs.ucla.edu>2012-07-25 15:47:42 -0700
commit71f88e00a23bc38dc6a15bd65bc1e64981546313 (patch)
treec8442f88e3f3c702a9d5bb214aa51fe6a6e19d45 /src
parent71f32295cef7d059e22d9e3685d11c4c53d5c328 (diff)
Use typedef for EMACS_INT, EMACS_UINT.
* lisp.h, s/ms-w32.h (EMACS_INT, EMACS_UINT): Use typedefs rather than macros. This simplifies debugging in the usual case, since it lets GDB show addresses as 'EMACS_INT *' rather than 'long int *' and it allows expressions involving EMACS_INT casts. * .gdbinit (xreload): Simplify by using EMACS_INT cast.
Diffstat (limited to 'src')
-rw-r--r--src/.gdbinit4
-rw-r--r--src/ChangeLog9
-rw-r--r--src/lisp.h12
-rw-r--r--src/s/ms-w32.h3
4 files changed, 19 insertions, 9 deletions
diff --git a/src/.gdbinit b/src/.gdbinit
index 1db25324ea0..379a14b2ea5 100644
--- a/src/.gdbinit
+++ b/src/.gdbinit
@@ -1190,9 +1190,7 @@ end
define xreload
set $tagmask = ((1 << gdb_gctypebits) - 1)
- # The consing_since_gc business widens the 1 to EMACS_INT,
- # a symbol not directly visible to GDB.
- set $valmask = gdb_use_lsb ? ~($tagmask) : ((consing_since_gc - consing_since_gc + 1) << gdb_valbits) - 1
+ set $valmask = gdb_use_lsb ? ~($tagmask) : ((EMACS_INT) 1 << gdb_valbits) - 1
end
document xreload
When starting Emacs a second time in the same gdb session under
diff --git a/src/ChangeLog b/src/ChangeLog
index 700ff294c83..88c90dd84d8 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,12 @@
+2012-07-25 Paul Eggert <eggert@cs.ucla.edu>
+
+ Use typedef for EMACS_INT, EMACS_UINT.
+ * lisp.h, s/ms-w32.h (EMACS_INT, EMACS_UINT): Use typedefs rather
+ than macros. This simplifies debugging in the usual case, since
+ it lets GDB show addresses as 'EMACS_INT *' rather than 'long int *'
+ and it allows expressions involving EMACS_INT casts.
+ * .gdbinit (xreload): Simplify by using EMACS_INT cast.
+
2012-07-25 Jan Djärv <jan.h.d@swipnet.se>
* nsterm.m (ns_read_socket): Return early if there is a modal
diff --git a/src/lisp.h b/src/lisp.h
index 7f6a2d72c89..e4eb8ce5084 100644
--- a/src/lisp.h
+++ b/src/lisp.h
@@ -45,22 +45,24 @@ extern void check_cons_list (void);
EMACS_INT_MAX - maximum value of EMACS_INT; can be used in #if
pI - printf length modifier for EMACS_INT
EMACS_UINT - unsigned variant of EMACS_INT */
-#ifndef EMACS_INT
+#ifndef EMACS_INT_MAX
# if LONG_MAX < LLONG_MAX && defined WIDE_EMACS_INT
-# define EMACS_INT long long
+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
-# define EMACS_INT long
+typedef long int EMACS_INT;
+typedef unsigned long int EMACS_UINT;
# define EMACS_INT_MAX LONG_MAX
# define pI "l"
# else
-# define EMACS_INT int
+typedef int EMACS_INT;
+typedef unsigned int EMACS_UINT;
# define EMACS_INT_MAX INT_MAX
# define pI ""
# endif
#endif
-#define EMACS_UINT unsigned EMACS_INT
/* Number of bits in some machine integer types. */
enum
diff --git a/src/s/ms-w32.h b/src/s/ms-w32.h
index 7128d8a069d..bcc4c4235ee 100644
--- a/src/s/ms-w32.h
+++ b/src/s/ms-w32.h
@@ -388,7 +388,8 @@ extern int getloadavg (double *, int);
# ifdef WIDE_EMACS_INT
/* Use pre-C99-style 64-bit integers. */
-# define EMACS_INT __int64
+typedef __int64 EMACS_INT;
+typedef unsigned __int64 EMACS_UINT;
# define EMACS_INT_MAX _I64_MAX
# define pI "I64"