diff options
| author | Paul Eggert | 2013-07-15 23:39:49 -0700 |
|---|---|---|
| committer | Paul Eggert | 2013-07-15 23:39:49 -0700 |
| commit | 6c6f1994bf684f510d600bd18023fa01b4b06500 (patch) | |
| tree | 04b7125d1327d8419024f28d14bfb384afc52cdd /src/eval.c | |
| parent | 8abee653a22b0b879a9376c1dce3e3ca2e2f31d6 (diff) | |
| download | emacs-6c6f1994bf684f510d600bd18023fa01b4b06500.tar.gz emacs-6c6f1994bf684f510d600bd18023fa01b4b06500.zip | |
Prefer list1 (X) to Fcons (X, Qnil) when building lists.
This makes the code easier to read and the executable a bit smaller.
Do not replace all calls to Fcons that happen to create lists,
just calls that are intended to create lists. For example, when
creating an alist that maps FOO to nil, use list1 (Fcons (FOO, Qnil))
rather than list1 (list1 (FOO)) or Fcons (Fcons (FOO, Qnil), Qnil).
Similarly for list2 through list5.
* buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
* bytecode.c (exec_byte_code):
* callint.c (quotify_arg, Fcall_interactively):
* callproc.c (Fcall_process, create_temp_file):
* charset.c (load_charset_map_from_file)
(Fdefine_charset_internal, init_charset):
* coding.c (get_translation_table, detect_coding_system)
(Fcheck_coding_systems_region)
(Fset_terminal_coding_system_internal)
(Fdefine_coding_system_internal, Fdefine_coding_system_alias):
* composite.c (update_compositions, Ffind_composition_internal):
* dired.c (directory_files_internal, file_name_completion)
(Fsystem_users):
* dispnew.c (Fopen_termscript, bitch_at_user, init_display):
* doc.c (Fsnarf_documentation):
* editfns.c (Fmessage_box):
* emacs.c (main):
* eval.c (do_debug_on_call, signal_error, maybe_call_debugger)
(Feval, eval_sub, Ffuncall, apply_lambda):
* fileio.c (make_temp_name, Fcopy_file, Faccess_file)
(Fset_file_selinux_context, Fset_file_acl, Fset_file_modes)
(Fset_file_times, Finsert_file_contents)
(Fchoose_write_coding_system, Fwrite_region):
* fns.c (Flax_plist_put, Fyes_or_no_p, syms_of_fns):
* font.c (font_registry_charsets, font_parse_fcname)
(font_prepare_cache, font_update_drivers, Flist_fonts):
* fontset.c (Fset_fontset_font, Ffontset_info, syms_of_fontset):
* frame.c (make_frame, Fmake_terminal_frame)
(x_set_frame_parameters, x_report_frame_params)
(x_default_parameter, Fx_parse_geometry):
* ftfont.c (syms_of_ftfont):
* image.c (gif_load):
* keyboard.c (command_loop_1):
* keymap.c (Fmake_keymap, Fmake_sparse_keymap, access_keymap_1)
(Fcopy_keymap, append_key, Fcurrent_active_maps)
(Fminor_mode_key_binding, accessible_keymaps_1)
(Faccessible_keymaps, Fwhere_is_internal):
* lread.c (read_emacs_mule_char):
* menu.c (find_and_return_menu_selection):
* minibuf.c (get_minibuffer):
* nsfns.m (Fns_perform_service):
* nsfont.m (ns_script_to_charset):
* nsmenu.m (ns_popup_dialog):
* nsselect.m (ns_get_local_selection, ns_string_from_pasteboard)
(Fx_own_selection_internal):
* nsterm.m (append2):
* print.c (Fredirect_debugging_output)
(print_prune_string_charset):
* process.c (Fdelete_process, Fprocess_contact)
(Fformat_network_address, set_socket_option)
(read_and_dispose_of_process_output, write_queue_push)
(send_process, exec_sentinel):
* sound.c (Fplay_sound_internal):
* textprop.c (validate_plist, add_properties)
(Fput_text_property, Fadd_face_text_property)
(copy_text_properties, text_property_list, syms_of_textprop):
* unexaix.c (report_error):
* unexcoff.c (report_error):
* unexsol.c (unexec):
* xdisp.c (redisplay_tool_bar, store_mode_line_string)
(Fformat_mode_line, syms_of_xdisp):
* xfaces.c (set_font_frame_param)
(Finternal_lisp_face_attribute_values)
(Finternal_merge_in_global_face, syms_of_xfaces):
* xfns.c (x_default_scroll_bar_color_parameter)
(x_default_font_parameter, x_create_tip_frame):
* xfont.c (xfont_supported_scripts):
* xmenu.c (Fx_popup_dialog, xmenu_show, xdialog_show)
(menu_help_callback, xmenu_show):
* xml.c (make_dom):
* xterm.c (set_wm_state):
Prefer list1 (FOO) to Fcons (FOO, Qnil) when creating a list,
and similarly for list2 through list5.
Diffstat (limited to 'src/eval.c')
| -rw-r--r-- | src/eval.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/src/eval.c b/src/eval.c index 0e231bdb285..25cfc540ce0 100644 --- a/src/eval.c +++ b/src/eval.c | |||
| @@ -338,7 +338,7 @@ do_debug_on_call (Lisp_Object code) | |||
| 338 | { | 338 | { |
| 339 | debug_on_next_call = 0; | 339 | debug_on_next_call = 0; |
| 340 | set_backtrace_debug_on_exit (specpdl_ptr - 1, true); | 340 | set_backtrace_debug_on_exit (specpdl_ptr - 1, true); |
| 341 | call_debugger (Fcons (code, Qnil)); | 341 | call_debugger (list1 (code)); |
| 342 | } | 342 | } |
| 343 | 343 | ||
| 344 | /* NOTE!!! Every function that can call EVAL must protect its args | 344 | /* NOTE!!! Every function that can call EVAL must protect its args |
| @@ -1611,7 +1611,7 @@ signal_error (const char *s, Lisp_Object arg) | |||
| 1611 | } | 1611 | } |
| 1612 | 1612 | ||
| 1613 | if (!NILP (hare)) | 1613 | if (!NILP (hare)) |
| 1614 | arg = Fcons (arg, Qnil); /* Make it a list. */ | 1614 | arg = list1 (arg); |
| 1615 | 1615 | ||
| 1616 | xsignal (Qerror, Fcons (build_string (s), arg)); | 1616 | xsignal (Qerror, Fcons (build_string (s), arg)); |
| 1617 | } | 1617 | } |
| @@ -1703,7 +1703,7 @@ maybe_call_debugger (Lisp_Object conditions, Lisp_Object sig, Lisp_Object data) | |||
| 1703 | /* RMS: What's this for? */ | 1703 | /* RMS: What's this for? */ |
| 1704 | && when_entered_debugger < num_nonmacro_input_events) | 1704 | && when_entered_debugger < num_nonmacro_input_events) |
| 1705 | { | 1705 | { |
| 1706 | call_debugger (Fcons (Qerror, Fcons (combined_data, Qnil))); | 1706 | call_debugger (list2 (Qerror, combined_data)); |
| 1707 | return 1; | 1707 | return 1; |
| 1708 | } | 1708 | } |
| 1709 | 1709 | ||
| @@ -1992,7 +1992,7 @@ If LEXICAL is t, evaluate using lexical scoping. */) | |||
| 1992 | { | 1992 | { |
| 1993 | ptrdiff_t count = SPECPDL_INDEX (); | 1993 | ptrdiff_t count = SPECPDL_INDEX (); |
| 1994 | specbind (Qinternal_interpreter_environment, | 1994 | specbind (Qinternal_interpreter_environment, |
| 1995 | CONSP (lexical) || NILP (lexical) ? lexical : Fcons (Qt, Qnil)); | 1995 | CONSP (lexical) || NILP (lexical) ? lexical : list1 (Qt)); |
| 1996 | return unbind_to (count, eval_sub (form)); | 1996 | return unbind_to (count, eval_sub (form)); |
| 1997 | } | 1997 | } |
| 1998 | 1998 | ||
| @@ -2257,7 +2257,7 @@ eval_sub (Lisp_Object form) | |||
| 2257 | 2257 | ||
| 2258 | lisp_eval_depth--; | 2258 | lisp_eval_depth--; |
| 2259 | if (backtrace_debug_on_exit (specpdl_ptr - 1)) | 2259 | if (backtrace_debug_on_exit (specpdl_ptr - 1)) |
| 2260 | val = call_debugger (Fcons (Qexit, Fcons (val, Qnil))); | 2260 | val = call_debugger (list2 (Qexit, val)); |
| 2261 | specpdl_ptr--; | 2261 | specpdl_ptr--; |
| 2262 | 2262 | ||
| 2263 | return val; | 2263 | return val; |
| @@ -2878,7 +2878,7 @@ usage: (funcall FUNCTION &rest ARGUMENTS) */) | |||
| 2878 | check_cons_list (); | 2878 | check_cons_list (); |
| 2879 | lisp_eval_depth--; | 2879 | lisp_eval_depth--; |
| 2880 | if (backtrace_debug_on_exit (specpdl_ptr - 1)) | 2880 | if (backtrace_debug_on_exit (specpdl_ptr - 1)) |
| 2881 | val = call_debugger (Fcons (Qexit, Fcons (val, Qnil))); | 2881 | val = call_debugger (list2 (Qexit, val)); |
| 2882 | specpdl_ptr--; | 2882 | specpdl_ptr--; |
| 2883 | return val; | 2883 | return val; |
| 2884 | } | 2884 | } |
| @@ -2920,7 +2920,7 @@ apply_lambda (Lisp_Object fun, Lisp_Object args) | |||
| 2920 | { | 2920 | { |
| 2921 | /* Don't do it again when we return to eval. */ | 2921 | /* Don't do it again when we return to eval. */ |
| 2922 | set_backtrace_debug_on_exit (specpdl_ptr - 1, false); | 2922 | set_backtrace_debug_on_exit (specpdl_ptr - 1, false); |
| 2923 | tem = call_debugger (Fcons (Qexit, Fcons (tem, Qnil))); | 2923 | tem = call_debugger (list2 (Qexit, tem)); |
| 2924 | } | 2924 | } |
| 2925 | SAFE_FREE (); | 2925 | SAFE_FREE (); |
| 2926 | return tem; | 2926 | return tem; |