diff src/lisp.h @ 1990:c7d6c746fea6

Use the term `scroll bar', instead of `scrollbar'. * alloc.c, frame.c, frame.h, indent.c, keyboard.c, keyboard.h, lisp.h, term.c, termhooks.h, window.c, window.h, xdisp.c, xfns.c, xterm.c, xterm.h: Terminology changed. * xterm.c (x_window_to_scrollbar, x_scrollbar_expose, x_scrollbar_handle_click, x_scrollbar_note_movement): Remember that these can be called during GC; we have to ignore mark bits. * lisp.h (GC_NILP, GC_EQ): New macros to help with that. * lisp.h (RETURN_UNGCPRO): Remove "do ... while (0)" wrapper around macro.
author Jim Blandy <jimb@redhat.com>
date Tue, 02 Mar 1993 08:16:00 +0000
parents 3fad322bb72a
children 637d9ebe3f50
line wrap: on
line diff
--- a/src/lisp.h	Tue Mar 02 08:14:57 1993 +0000
+++ b/src/lisp.h	Tue Mar 02 08:16:00 1993 +0000
@@ -572,6 +572,7 @@
 /* Data type checking */
 
 #define NILP(x)  (XFASTINT (x) == XFASTINT (Qnil))
+#define GC_NILP(x) GC_EQ (x, Qnil)
 
 #ifdef LISP_FLOAT_TYPE
 #define NUMBERP(x) (XTYPE (x) == Lisp_Int || XTYPE (x) == Lisp_Float)
@@ -582,7 +583,7 @@
 /* #define LISTP(x) (XTYPE ((x)) == Lisp_Cons)*/
 #define CONSP(x) (XTYPE ((x)) == Lisp_Cons)
 #define EQ(x, y) (XFASTINT (x) == XFASTINT (y))
-
+#define GC_EQ(x, y) (XGCTYPE (x) == XGCTYPE (y) && XPNTR (x) == XPNTR (y))
 
 #define CHECK_LIST(x, i) \
   { if ((XTYPE ((x)) != Lisp_Cons) && !NILP (x)) x = wrong_type_argument (Qlistp, (x)); }
@@ -894,16 +895,17 @@
   
 #define UNGCPRO (gcprolist = gcpro1.next)
 
-/* Evaluate expr, UNGCPRO, and then return the value of expr.  */
+/* Evaluate expr, UNGCPRO, and then return the value of expr.  I used
+   to have a `do ... while' clause around this to make it interact
+   with semicolons correctly, but this makes some compilers complain
+   that the while is never reached.  */
 #define RETURN_UNGCPRO(expr)		\
-  do					\
     {					\
       Lisp_Object ret_ungc_val;		\
       ret_ungc_val = (expr);		\
       UNGCPRO;				\
       return ret_ungc_val;		\
     }					\
-  while (0)
 
 /* Defined in data.c */
 extern Lisp_Object Qnil, Qt, Qquote, Qlambda, Qsubr, Qunbound;
@@ -1121,7 +1123,7 @@
 extern Lisp_Object Vhelp_form, Vtop_level;
 extern Lisp_Object Fdiscard_input (), Frecursive_edit ();
 extern Lisp_Object Fcommand_execute (), Finput_pending_p ();
-extern Lisp_Object Qvertical_scrollbar;
+extern Lisp_Object Qvertical_scroll_bar;
 
 /* defined in keymap.c */