emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] Changes to emacs/src/lisp.h


From: Kenichi Handa
Subject: [Emacs-diffs] Changes to emacs/src/lisp.h
Date: Wed, 31 Jul 2002 03:10:36 -0400

Index: emacs/src/lisp.h
diff -c emacs/src/lisp.h:1.435 emacs/src/lisp.h:1.436
*** emacs/src/lisp.h:1.435      Sat Jul 20 17:47:26 2002
--- emacs/src/lisp.h    Tue Jul 23 22:07:11 2002
***************
*** 352,377 ****
  #define XUINT(a) ((EMACS_UINT) ((a) & VALMASK))
  #endif
  
- #ifndef XPNTR
- #ifdef HAVE_SHM
- /* In this representation, data is found in two widely separated segments.  */
- extern size_t pure_size;
- #define XPNTR(a) \
-   (XUINT (a) | (XUINT (a) > pure_size ? DATA_SEG_BITS : PURE_SEG_BITS))
- #else /* not HAVE_SHM */
- #ifdef DATA_SEG_BITS
- /* This case is used for the rt-pc.
-    In the diffs I was given, it checked for ptr = 0
-    and did not adjust it in that case.
-    But I don't think that zero should ever be found
-    in a Lisp object whose data type says it points to something.  */
- #define XPNTR(a) (XUINT (a) | DATA_SEG_BITS)
- #else
- #define XPNTR(a) XUINT (a)
- #endif
- #endif /* not HAVE_SHM */
- #endif /* no XPNTR */
- 
  #ifndef XSET
  #define XSET(var, type, ptr) \
     ((var) = ((EMACS_INT)(type) << VALBITS) + ((EMACS_INT) (ptr) & VALMASK))
--- 352,357 ----
***************
*** 437,443 ****
  #endif /* EXPLICIT_SIGN_EXTEND */
  
  #define XUINT(a) ((a).u.val)
- #define XPNTR(a) ((a).u.val)
  
  #define XSET(var, vartype, ptr) \
     (((var).s.val = ((EMACS_INT) (ptr))), ((var).s.type = ((char) (vartype))))
--- 417,422 ----
***************
*** 462,467 ****
--- 441,466 ----
  #define XUNMARK(a) (XMARKBIT(a) = 0)
  
  #endif /* NO_UNION_TYPE */
+ 
+ #ifndef XPNTR
+ #ifdef HAVE_SHM
+ /* In this representation, data is found in two widely separated segments.  */
+ extern size_t pure_size;
+ #define XPNTR(a) \
+   (XUINT (a) | (XUINT (a) > pure_size ? DATA_SEG_BITS : PURE_SEG_BITS))
+ #else /* not HAVE_SHM */
+ #ifdef DATA_SEG_BITS
+ /* This case is used for the rt-pc.
+    In the diffs I was given, it checked for ptr = 0
+    and did not adjust it in that case.
+    But I don't think that zero should ever be found
+    in a Lisp object whose data type says it points to something.  */
+ #define XPNTR(a) (XUINT (a) | DATA_SEG_BITS)
+ #else
+ #define XPNTR(a) XUINT (a)
+ #endif
+ #endif /* not HAVE_SHM */
+ #endif /* no XPNTR */
  
  /* Largest and smallest representable fixnum values.  These are the C
     values.  */



reply via email to

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