diff src/buffer.h @ 5118:e0db3c197671 ben-lisp-object

merge up to latest default branch, doesn't compile yet
author Ben Wing <ben@xemacs.org>
date Sat, 26 Dec 2009 21:18:49 -0600
parents 141c2920ea48
children d1247f3cc363
line wrap: on
line diff
--- a/src/buffer.h	Sat Dec 26 00:20:27 2009 -0600
+++ b/src/buffer.h	Sat Dec 26 21:18:49 2009 -0600
@@ -79,6 +79,9 @@
 
 struct buffer_text
 {
+#ifdef NEW_GC
+  struct lrecord_header header;
+#endif /* NEW_GC */
   Ibyte *beg;		/* Actual address of buffer contents. */
   Bytebpos gpt;		/* Index of gap in buffer. */
   Charbpos bufgpt;	/* Equivalent as a Charbpos. */
@@ -138,6 +141,20 @@
   struct buffer_text_change_data *changes;
 };
 
+#ifdef NEW_GC
+typedef struct buffer_text Lisp_Buffer_Text;
+
+DECLARE_LISP_OBJECT (buffer_text, Lisp_Buffer_Text);
+
+#define XBUFFER_TEXT(x) \
+  XRECORD (x, buffer_text, Lisp_Buffer_Text)
+#define wrap_buffer_text(p) wrap_record (p, buffer_text)
+#define BUFFER_TEXT_P(x) RECORDP (x, buffer_text)
+#define CHECK_BUFFER_TEXT(x) CHECK_RECORD (x, buffer_text)
+#define CONCHECK_BUFFER_TEXT(x) CONCHECK_RECORD (x, buffer_text)
+#endif /* NEW_GC */
+
+
 struct buffer
 {
   struct LCRECORD_HEADER header;
@@ -251,7 +268,7 @@
 #undef MARKED_SLOT
 };
 
-DECLARE_LRECORD (buffer, struct buffer);
+DECLARE_LISP_OBJECT (buffer, struct buffer);
 #define XBUFFER(x) XRECORD (x, buffer, struct buffer)
 #define wrap_buffer(p) wrap_record (p, buffer)
 #define BUFFERP(x) RECORDP (x, buffer)