diff options
| author | Paul Eggert | 2013-07-01 20:41:16 -0700 |
|---|---|---|
| committer | Paul Eggert | 2013-07-01 20:41:16 -0700 |
| commit | 52a9bcae40a1c8536cf70cc4622a6877024e4b36 (patch) | |
| tree | 90f239c0a7f16286c3938b1e1f4c8b72ce56b1e9 /src/process.c | |
| parent | bb70a65f1de65b5abf87c0b43d03e55ed6e579f6 (diff) | |
| download | emacs-52a9bcae40a1c8536cf70cc4622a6877024e4b36.tar.gz emacs-52a9bcae40a1c8536cf70cc4622a6877024e4b36.zip | |
Don't convert function pointers to void * and back.
It isn't portable C, and it's easy enough to avoid.
* alloc.c: Verify SAVE_FUNCPOINTER bits, too.
(make_save_value): Add support for SAVE_FUNCPOINTER.
* keymap.c (map_keymap_char_table_item, map_keymap_internal):
* print.c (print_object):
Distinguish function from object pointers.
* lisp.h (SAVE_FUNCPOINTER): New constant.
(SAVE_SLOT_BITS): Adjust to it.
(SAVE_TYPE_FUNCPTR_PTR_OBJ): New constant, replacing
SAVE_TYPE_PTR_PTR_OBJ. Change the only use.
(voidfuncptr): New typedef.
(struct Lisp_Save_Value): New member data[0].funcpointer.
(XSAVE_FUNCPOINTER): New function.
Diffstat (limited to 'src/process.c')
0 files changed, 0 insertions, 0 deletions