aboutsummaryrefslogtreecommitdiffstats
path: root/src/buffer.c
diff options
context:
space:
mode:
authorDmitry Antipov2012-08-01 12:49:28 +0400
committerDmitry Antipov2012-08-01 12:49:28 +0400
commitd8a05828fd9f78c6cadddd8b47b53d83833c3917 (patch)
treee79a8e7e0a0abc277d5f928835abb0b64d7dcae7 /src/buffer.c
parent015a2738eb575f9dc07ea5e589eb88c8e071930a (diff)
downloademacs-d8a05828fd9f78c6cadddd8b47b53d83833c3917.tar.gz
emacs-d8a05828fd9f78c6cadddd8b47b53d83833c3917.zip
Use INTERNAL_FIELD for conses and overlays.
* src/lisp.h (struct Lisp_Cons): Use INTERNAL_FIELD. Remove obsolete comment. (MVAR): New macro. (struct Lisp_Overlay): Use INTERNAL_FIELD. * src/alloc.c, src/buffer.c, src/buffer.h, src/fns.c: Adjust users. * admin/coccinelle/overlay.cocci: Semantic patch to replace direct access to Lisp_Object members of struct Lisp_Overlay to MVAR.
Diffstat (limited to 'src/buffer.c')
-rw-r--r--src/buffer.c29
1 files changed, 15 insertions, 14 deletions
diff --git a/src/buffer.c b/src/buffer.c
index e70360f5173..8b7f524e27a 100644
--- a/src/buffer.c
+++ b/src/buffer.c
@@ -417,17 +417,17 @@ copy_overlays (struct buffer *b, struct Lisp_Overlay *list)
417 Lisp_Object overlay, start, end; 417 Lisp_Object overlay, start, end;
418 struct Lisp_Marker *m; 418 struct Lisp_Marker *m;
419 419
420 eassert (MARKERP (list->start)); 420 eassert (MARKERP (MVAR (list, start)));
421 m = XMARKER (list->start); 421 m = XMARKER (MVAR (list, start));
422 start = build_marker (b, m->charpos, m->bytepos); 422 start = build_marker (b, m->charpos, m->bytepos);
423 XMARKER (start)->insertion_type = m->insertion_type; 423 XMARKER (start)->insertion_type = m->insertion_type;
424 424
425 eassert (MARKERP (list->end)); 425 eassert (MARKERP (MVAR (list, end)));
426 m = XMARKER (list->end); 426 m = XMARKER (MVAR (list, end));
427 end = build_marker (b, m->charpos, m->bytepos); 427 end = build_marker (b, m->charpos, m->bytepos);
428 XMARKER (end)->insertion_type = m->insertion_type; 428 XMARKER (end)->insertion_type = m->insertion_type;
429 429
430 overlay = build_overlay (start, end, Fcopy_sequence (list->plist)); 430 overlay = build_overlay (start, end, Fcopy_sequence (MVAR (list, plist)));
431 if (tail) 431 if (tail)
432 tail = tail->next = XOVERLAY (overlay); 432 tail = tail->next = XOVERLAY (overlay);
433 else 433 else
@@ -657,10 +657,11 @@ CLONE nil means the indirect buffer's state is reset to default values. */)
657static void 657static void
658drop_overlay (struct buffer *b, struct Lisp_Overlay *ov) 658drop_overlay (struct buffer *b, struct Lisp_Overlay *ov)
659{ 659{
660 eassert (b == XBUFFER (Fmarker_buffer (ov->start))); 660 eassert (b == XBUFFER (Fmarker_buffer (MVAR (ov, start))));
661 modify_overlay (b, marker_position (ov->start), marker_position (ov->end)); 661 modify_overlay (b, marker_position (MVAR (ov, start)),
662 Fset_marker (ov->start, Qnil, Qnil); 662 marker_position (MVAR (ov, end)));
663 Fset_marker (ov->end, Qnil, Qnil); 663 Fset_marker (MVAR (ov, start), Qnil, Qnil);
664 Fset_marker (MVAR (ov, end), Qnil, Qnil);
664 665
665} 666}
666 667
@@ -3886,7 +3887,7 @@ OVERLAY. */)
3886{ 3887{
3887 CHECK_OVERLAY (overlay); 3888 CHECK_OVERLAY (overlay);
3888 3889
3889 return Fcopy_sequence (XOVERLAY (overlay)->plist); 3890 return Fcopy_sequence (MVAR (XOVERLAY (overlay), plist));
3890} 3891}
3891 3892
3892 3893
@@ -4062,7 +4063,7 @@ DEFUN ("overlay-get", Foverlay_get, Soverlay_get, 2, 2, 0,
4062 (Lisp_Object overlay, Lisp_Object prop) 4063 (Lisp_Object overlay, Lisp_Object prop)
4063{ 4064{
4064 CHECK_OVERLAY (overlay); 4065 CHECK_OVERLAY (overlay);
4065 return lookup_char_property (XOVERLAY (overlay)->plist, prop, 0); 4066 return lookup_char_property (MVAR (XOVERLAY (overlay), plist), prop, 0);
4066} 4067}
4067 4068
4068DEFUN ("overlay-put", Foverlay_put, Soverlay_put, 3, 3, 0, 4069DEFUN ("overlay-put", Foverlay_put, Soverlay_put, 3, 3, 0,
@@ -4077,7 +4078,7 @@ VALUE will be returned.*/)
4077 4078
4078 buffer = Fmarker_buffer (OVERLAY_START (overlay)); 4079 buffer = Fmarker_buffer (OVERLAY_START (overlay));
4079 4080
4080 for (tail = XOVERLAY (overlay)->plist; 4081 for (tail = MVAR (XOVERLAY (overlay), plist);
4081 CONSP (tail) && CONSP (XCDR (tail)); 4082 CONSP (tail) && CONSP (XCDR (tail));
4082 tail = XCDR (XCDR (tail))) 4083 tail = XCDR (XCDR (tail)))
4083 if (EQ (XCAR (tail), prop)) 4084 if (EQ (XCAR (tail), prop))
@@ -4088,8 +4089,8 @@ VALUE will be returned.*/)
4088 } 4089 }
4089 /* It wasn't in the list, so add it to the front. */ 4090 /* It wasn't in the list, so add it to the front. */
4090 changed = !NILP (value); 4091 changed = !NILP (value);
4091 XOVERLAY (overlay)->plist 4092 MVAR (XOVERLAY (overlay), plist)
4092 = Fcons (prop, Fcons (value, XOVERLAY (overlay)->plist)); 4093 = Fcons (prop, Fcons (value, MVAR (XOVERLAY (overlay), plist)));
4093 found: 4094 found:
4094 if (! NILP (buffer)) 4095 if (! NILP (buffer))
4095 { 4096 {