2013-09-26 17:14:40 +02:00

105 lines
2.8 KiB
Plaintext

$NetBSD: patch-bj,v 1.1.1.1 2003/04/11 00:31:45 uebayasi Exp $
--- ./src/lisp.h.orig Sun Jan 3 08:31:23 1999
+++ ./src/lisp.h Tue Sep 26 09:48:10 2000
@@ -123,25 +123,25 @@
{
/* Used for comparing two Lisp_Objects;
also, positive integers can be accessed fast this way. */
- int i;
+ long int i;
struct
{
- int val: VALBITS;
- int type: GCTYPEBITS+1;
+ long int val: VALBITS;
+ long int type: GCTYPEBITS+1;
} s;
struct
{
- unsigned int val: VALBITS;
- int type: GCTYPEBITS+1;
+ long unsigned int val: VALBITS;
+ long int type: GCTYPEBITS+1;
} u;
struct
{
- unsigned int val: VALBITS;
+ long unsigned int val: VALBITS;
enum Lisp_Type type: GCTYPEBITS;
/* The markbit is not really part of the value of a Lisp_Object,
and is always zero except during garbage collection. */
- unsigned int markbit: 1;
+ long unsigned int markbit: 1;
} gu;
}
Lisp_Object;
@@ -153,17 +153,17 @@
{
/* Used for comparing two Lisp_Objects;
also, positive integers can be accessed fast this way. */
- int i;
+ long int i;
struct
{
- int type: GCTYPEBITS+1;
- int val: VALBITS;
+ long int type: GCTYPEBITS+1;
+ long int val: VALBITS;
} s;
struct
{
- int type: GCTYPEBITS+1;
- unsigned int val: VALBITS;
+ long int type: GCTYPEBITS+1;
+ long unsigned int val: VALBITS;
} u;
struct
{
@@ -171,7 +171,7 @@
and is always zero except during garbage collection. */
unsigned int markbit: 1;
enum Lisp_Type type: GCTYPEBITS;
- unsigned int val: VALBITS;
+ long unsigned int val: VALBITS;
} gu;
}
Lisp_Object;
@@ -270,14 +270,14 @@
/* Extract the value of a Lisp_Object as a signed integer. */
#ifndef XINT /* Some machines need to do this differently. */
-#define XINT(a) (((a) << (BITS_PER_INT-VALBITS)) >> (BITS_PER_INT-VALBITS))
+#define XINT(a) (EMACS_INT) (((a) << (BITS_PER_EMACS_INT-VALBITS)) >> (BITS_PER_EMACS_INT-VALBITS))
#endif
/* Extract the value as an unsigned integer. This is a basis
for extracting it as a pointer to a structure in storage. */
#ifndef XUINT
-#define XUINT(a) ((a) & VALMASK)
+#define XUINT(a) (EMACS_UINT) ((a) & VALMASK)
#endif
#ifndef XPNTR
@@ -358,7 +358,7 @@
#ifdef EXPLICIT_SIGN_EXTEND
/* Make sure we sign-extend; compilers have been known to fail to do so. */
-#define XINT(a) (((a).i << (BITS_PER_INT-VALBITS)) >> (BITS_PER_INT-VALBITS))
+#define XINT(a) (((a).i << (BITS_PER_EMACS_INT-VALBITS)) >> (BITS_PER_EMACS_INT-VALBITS))
#else
#define XINT(a) ((a).s.val)
#endif /* EXPLICIT_SIGN_EXTEND */
@@ -367,7 +367,7 @@
#define XPNTR(a) ((a).u.val)
#define XSET(var, vartype, ptr) \
- (((var).s.type = ((char) (vartype))), ((var).s.val = ((int) (ptr))))
+ (((var).s.type = ((char) (vartype))), ((var).s.val = ((EMACS_INT) (ptr))))
extern Lisp_Object make_number ();