diff options
author | Paul Eggert <eggert@cs.ucla.edu> | 2013-03-21 13:56:22 -0700 |
---|---|---|
committer | Paul Eggert <eggert@cs.ucla.edu> | 2013-03-21 13:56:22 -0700 |
commit | 7b1123d824e51d40496c242e7a7f173de8936100 (patch) | |
tree | 0aaafb8bc660f02c35516227bfde2fef344d318a /src/xmenu.c | |
parent | d6723bf7e58e17c889e354bc429f3f134281953a (diff) | |
download | emacs-7b1123d824e51d40496c242e7a7f173de8936100.tar.gz |
Use functions and constants to manipulate Lisp_Save_Value objects.
This replaces code that used macros and strings and token-pasting.
The change makes the C source a bit easier to follow,
and shrinks the Emacs executable a bit.
* alloc.c: Verify some properties of Lisp_Save_Value's representation.
(make_save_value): Change 1st arg from string to enum. All callers
changed.
(INTX): Remove.
(mark_object): Use if, not #if, for GC_MARK_STACK.
* lisp.h (SAVE_VALUEP, XSAVE_VALUE, XSAVE_POINTER, XSAVE_INTEGER)
(XSAVE_OBJECT): Now functions, not macros.
(STRING_BYTES_BOUND): Now just a macro, not a constant too;
the constant was never used.
(SAVE_SLOT_BITS, SAVE_VALUE_SLOTS, SAVE_TYPE_BITS, SAVE_TYPE_INT_INT)
(SAVE_TYPE_INT_INT_INT, SAVE_TYPE_OBJ_OBJ, SAVE_TYPE_OBJ_OBJ_OBJ)
(SAVE_TYPE_OBJ_OBJ_OBJ_OBJ, SAVE_TYPE_PTR_INT, SAVE_TYPE_PTR_OBJ)
(SAVE_TYPE_PTR_PTR, SAVE_TYPE_PTR_PTR_OBJ, SAVE_TYPE_MEMORY):
New constants.
(struct Lisp_Save_Value): Replace members area, type0, type1, type2,
type3 with a single member save_type. All uses changed.
(save_type, set_save_pointer, set_save_integer): New functions.
* print.c (PRINTX): Remove.
Diffstat (limited to 'src/xmenu.c')
-rw-r--r-- | src/xmenu.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/xmenu.c b/src/xmenu.c index 958cd220393..57cf27f955d 100644 --- a/src/xmenu.c +++ b/src/xmenu.c @@ -2479,7 +2479,7 @@ xmenu_show (FRAME_PTR f, int x, int y, bool for_click, bool keymaps, #endif record_unwind_protect (pop_down_menu, - make_save_value ("pp", f, menu)); + make_save_value (SAVE_TYPE_PTR_PTR, f, menu)); /* Help display under X won't work because XMenuActivate contains a loop that doesn't give Emacs a chance to process it. */ |