aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/lisp.h22
1 files changed, 19 insertions, 3 deletions
diff --git a/src/lisp.h b/src/lisp.h
index 7d69e765695..a13db81a776 100644
--- a/src/lisp.h
+++ b/src/lisp.h
@@ -153,12 +153,19 @@ enum Lisp_Type
153 Lisp_Window, 153 Lisp_Window,
154 154
155 /* Used by save,set,restore-window-configuration */ 155 /* Used by save,set,restore-window-configuration */
156 Lisp_Window_Configuration 156 Lisp_Window_Configuration,
157 157
158#ifdef LISP_FLOAT_TYPE 158#ifdef LISP_FLOAT_TYPE
159 , 159 Lisp_Float,
160 Lisp_Float
161#endif /* LISP_FLOAT_TYPE */ 160#endif /* LISP_FLOAT_TYPE */
161
162 /* The overlay type.
163 An overlay values is actually a retagged cons, the first in a
164 list of the form
165 ((START . END) nil . PLIST)
166 where START and END are markers in the overlay's buffer, and
167 PLIST is the overlay's property list. */
168 Lisp_Overlay
162 }; 169 };
163 170
164#ifndef NO_UNION_TYPE 171#ifndef NO_UNION_TYPE
@@ -626,7 +633,12 @@ typedef unsigned char UCHAR;
626#define FRAMEP(x) (XTYPE ((x)) == Lisp_Frame) 633#define FRAMEP(x) (XTYPE ((x)) == Lisp_Frame)
627#define WINDOWP(x) (XTYPE ((x)) == Lisp_Window) 634#define WINDOWP(x) (XTYPE ((x)) == Lisp_Window)
628#define WINDOW_CONFIGURATIONP(x) (XTYPE ((x)) == Lisp_Window_Configuration) 635#define WINDOW_CONFIGURATIONP(x) (XTYPE ((x)) == Lisp_Window_Configuration)
636#ifdef LISP_FLOAT_TYPE
629#define FLOATP(x) (XTYPE ((x)) == Lisp_Float) 637#define FLOATP(x) (XTYPE ((x)) == Lisp_Float)
638#else
639#define FLOATP(x) (0)
640#endif
641#define OVERLAYP(x) (XTYPE ((x)) == Lisp_Overlay)
630 642
631#define EQ(x, y) (XFASTINT (x) == XFASTINT (y)) 643#define EQ(x, y) (XFASTINT (x) == XFASTINT (y))
632#define GC_EQ(x, y) (XGCTYPE (x) == XGCTYPE (y) && XPNTR (x) == XPNTR (y)) 644#define GC_EQ(x, y) (XGCTYPE (x) == XGCTYPE (y) && XPNTR (x) == XPNTR (y))
@@ -713,6 +725,9 @@ typedef unsigned char UCHAR;
713#define XFLOATINT(n) XINT((n)) 725#define XFLOATINT(n) XINT((n))
714#endif /* LISP_FLOAT_TYPE */ 726#endif /* LISP_FLOAT_TYPE */
715 727
728#define CHECK_OVERLAY(x, i) \
729 { if (XTYPE ((x)) != Lisp_Overlay) x = wrong_type_argument (Qoverlayp, (x));}
730
716/* Cast pointers to this type to compare them. Some machines want int. */ 731/* Cast pointers to this type to compare them. Some machines want int. */
717#ifndef PNTR_COMPARISON_TYPE 732#ifndef PNTR_COMPARISON_TYPE
718#define PNTR_COMPARISON_TYPE unsigned int 733#define PNTR_COMPARISON_TYPE unsigned int
@@ -1122,6 +1137,7 @@ extern Lisp_Object Fget_buffer (), Fget_buffer_create (), Fset_buffer ();
1122extern Lisp_Object Fbarf_if_buffer_read_only (); 1137extern Lisp_Object Fbarf_if_buffer_read_only ();
1123extern Lisp_Object Fcurrent_buffer (), Fswitch_to_buffer (), Fpop_to_buffer (); 1138extern Lisp_Object Fcurrent_buffer (), Fswitch_to_buffer (), Fpop_to_buffer ();
1124extern Lisp_Object Fother_buffer (); 1139extern Lisp_Object Fother_buffer ();
1140extern Lisp_Object Qoverlayp;
1125extern struct buffer *all_buffers; 1141extern struct buffer *all_buffers;
1126 1142
1127/* defined in marker.c */ 1143/* defined in marker.c */