diff options
| author | Dmitry Antipov | 2012-08-01 12:49:28 +0400 |
|---|---|---|
| committer | Dmitry Antipov | 2012-08-01 12:49:28 +0400 |
| commit | d8a05828fd9f78c6cadddd8b47b53d83833c3917 (patch) | |
| tree | e79a8e7e0a0abc277d5f928835abb0b64d7dcae7 /src/buffer.c | |
| parent | 015a2738eb575f9dc07ea5e589eb88c8e071930a (diff) | |
| download | emacs-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.c | 29 |
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. */) | |||
| 657 | static void | 657 | static void |
| 658 | drop_overlay (struct buffer *b, struct Lisp_Overlay *ov) | 658 | drop_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 | ||
| 4068 | DEFUN ("overlay-put", Foverlay_put, Soverlay_put, 3, 3, 0, | 4069 | DEFUN ("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 | { |