* syntax.c (scan_words): Remove var that was set but not used.
[bpt/emacs.git] / src / ChangeLog
index 1e77a64..d22ec42 100644 (file)
@@ -1,3 +1,296 @@
+2011-04-04  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * syntax.c (scan_words): Remove var that was set but not used.
+
+       * lread.c (lisp_file_lexically_bound_p): Use ints rather than endptrs.
+       (lisp_file_lexically_bound_p, read1): Use unsigned instead of int.
+       (safe_to_load_p): Make the end-of-loop test the inverse of the in-loop.
+
+       * print.c (print_error_message): Avoid int overflow.
+
+       * font.c (font_list_entities): Redo for clarity,
+       so that reader need not know FONT_DPI_INDEX + 1 == FONT_SPACING_INDEX.
+
+2011-04-03  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * font.c (font_find_for_lface, Ffont_get_glyphs): Remove unused vars.
+       (font_score): Avoid potential overflow in diff calculation.
+
+       * fns.c (substring_both): Remove var that is set but not used.
+       (sxhash): Redo loop for clarity and to avoid wraparound warning.
+
+       * eval.c (funcall_lambda): Rename local to avoid shadowing.
+
+       * alloc.c (mark_object_loop_halt, mark_object): Use size_t, not int.
+       Otherwise, GCC 4.6.0 optimizes the loop check away since the check
+       can always succeed if overflow has undefined behavior.
+
+       * search.c (boyer_moore, wordify): Remove vars set but not used.
+       (wordify): Omit three unnecessary tests.
+
+       * indent.c (MULTIBYTE_BYTES_WIDTH): Don't compute wide_column.
+       All callers changed.  This avoids the need for an unused var.
+
+       * casefiddle.c (casify_region): Remove var that is set but not used.
+
+       * dired.c (file_name_completion): Remove var that is set but not used.
+
+       * fileio.c (Finsert_file_contents): Make EOF condition clearer.
+
+2011-04-02  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * fileio.c (Finsert_file_contents): Avoid signed integer overflow.
+       (Finsert_file_contents): Remove unnecessary code checking fd.
+
+       * minibuf.c (read_minibuf_noninteractive): Use size_t for sizes.
+       Check for integer overflow on size calculations.
+
+       * buffer.c (Fprevious_overlay_change): Remove var that is set
+       but not used.
+
+       * keyboard.c (menu_bar_items, read_char_minibuf_menu_prompt):
+       Remove vars that are set but not used.
+       (timer_check_2): Don't assume timer-list and idle-timer-list are lists.
+       (timer_check_2): Mark vars as initialized.
+
+       * gtkutil.c (xg_get_file_with_chooser): Mark var as initialized.
+
+       * image.c (lookup_image): Remove var that is set but not used.
+       (xbm_load): Use parse_p, for gcc -Werror=unused-but-set-variable.
+
+       * fontset.c (Finternal_char_font, Ffontset_info): Remove vars
+       that are set but not used.
+
+       * xfns.c (make_invisible_cursor): Don't return garbage
+       if XCreateBitmapFromData fails (Bug#8410).
+
+       * xselect.c (x_get_local_selection, x_handle_property_notify):
+       Remove vars that are set but not used.
+
+2011-04-01  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * xfns.c (x_create_tip_frame): Remove var that is set but not used.
+       (make_invisible_cursor): Initialize a possibly-uninitialized variable.
+
+       * xterm.c (x_scroll_bar_to_input_event) [!USE_GTK]:
+       Remove var that is set but not used.
+       (scroll_bar_windows_size): Now size_t, not int.
+       (x_send_scroll_bar_event): Use size_t, not int, for sizes.
+       Check for overflow.
+
+       * xfaces.c (realize_named_face): Remove vars that are set but not used.
+       (map_tty_color) [!defined MSDOS]: Likewise.
+
+       * term.c (tty_write_glyphs): Use size_t; this avoids overflow warning.
+
+       * coding.c: Remove vars that are set but not used.
+       (DECODE_COMPOSITION_RULE): Remove 2nd arg, which is unused.
+       All callers changed.
+       (decode_coding_utf_8, decode_coding_utf_16 decode_coding_emacs_mule):
+       (decode_coding_iso_2022, encode_coding_sjis, encode_coding_big5):
+       (decode_coding_charset): Remove vars that are set but not used.
+
+       * bytecode.c (Fbyte_code) [!defined BYTE_CODE_SAFE]: Remove var
+       that is set but not used.
+
+       * print.c (print_object): Remove var that is set but not used.
+
+       Replace 2 copies of readlink code with 1 gnulib version (Bug#8401).
+       The gnulib version avoids calling malloc in the usual case,
+       and on 64-bit hosts doesn't have some arbitrary 32-bit limits.
+       * fileio.c (Ffile_symlink_p): Use emacs_readlink.
+       * filelock.c (current_lock_owner): Likewise.
+       * lisp.h (READLINK_BUFSIZE, emacs_readlink): New function.
+       * sysdep.c: Include allocator.h, careadlinkat.h.
+       (emacs_no_realloc_allocator): New static constant.
+       (emacs_readlink): New function.
+       * deps.mk (sysdep.o): Depend on ../lib/allocator.h and on
+       ../lib/careadlinkat.h.
+
+2011-04-01  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       Add lexical binding.
+
+       * window.c (Ftemp_output_buffer_show): New fun.
+       (Fsave_window_excursion):
+       * print.c (Fwith_output_to_temp_buffer): Move to subr.el.
+
+       * lread.c (lisp_file_lexically_bound_p): New function.
+       (Fload): Bind Qlexical_binding.
+       (readevalloop): Remove `evalfun' arg.
+       Bind Qinternal_interpreter_environment.
+       (Feval_buffer): Bind Qlexical_binding.
+       (defvar_int, defvar_bool, defvar_lisp_nopro, defvar_kboard):
+       Mark as dynamic.
+       (syms_of_lread): Declare `lexical-binding'.
+
+       * lisp.h (struct Lisp_Symbol): New field `declared_special'.
+
+       * keyboard.c (eval_dyn): New fun.
+       (menu_item_eval_property): Use it.
+
+       * image.c (parse_image_spec): Use Ffunctionp.
+
+       * fns.c (concat, mapcar1): Accept byte-code-functions.
+
+       * eval.c (Fsetq): Handle lexical vars.
+       (Fdefun, Fdefmacro, Ffunction): Make closures when needed.
+       (Fdefconst, Fdefvaralias, Fdefvar): Mark as dynamic.
+       (FletX, Flet): Obey lexical binding.
+       (Fcommandp): Handle closures.
+       (Feval): New `lexical' arg.
+       (eval_sub): New function extracted from Feval.  Use it almost
+       everywhere where Feval was used.  Look up vars in lexical env.
+       Handle closures.
+       (Ffunctionp): Move from subr.el.
+       (Ffuncall): Handle closures.
+       (apply_lambda): Remove `eval_flags'.
+       (funcall_lambda): Handle closures and new byte-code-functions.
+       (Fspecial_variable_p): New function.
+       (syms_of_eval): Initialize the Vinternal_interpreter_environment var,
+       but without exporting it to Lisp.
+
+       * doc.c (Fdocumentation, store_function_docstring):
+       * data.c (Finteractive_form): Handle closures.
+
+       * callint.c (Fcall_interactively): Preserve lexical-binding mode for
+       interactive spec.
+
+       * bytecode.c (Bstack_ref, Bstack_set, Bstack_set2, BdiscardN): New
+       byte-codes.
+       (exec_byte_code): New function extracted from Fbyte_code to handle new
+       calling convention for byte-code-functions.  Add new byte-codes.
+
+       * buffer.c (defvar_per_buffer): Set new `declared_special' field.
+
+       * alloc.c (Fmake_symbol): Init new `declared_special' field.
+
+2011-03-31  Juanma Barranquero  <lekktu@gmail.com>
+
+       * xdisp.c (redisplay_internal): Fix prototype.
+
+2011-03-31  Eli Zaretskii  <eliz@gnu.org>
+
+       * xdisp.c (SCROLL_LIMIT): New macro.
+       (try_scrolling): Use it when setting scroll_limit.  Limit
+       scrolling to 100 screen lines.
+       (redisplay_window): Even when falling back on "recentering",
+       position point in the window according to scroll-conservatively,
+       scroll-margin, and scroll-*-aggressively variables.  (Bug#6671)
+
+       (try_scrolling): When point is above the window, allow searching
+       as far as scroll_max, or one screenful, to compute vertical
+       distance from PT to the scroll margin position.  This prevents
+       try_scrolling from unnecessarily failing when
+       scroll-conservatively is set to a value slightly larger than the
+       window height.  Clean up the case of PT below the margin at bottom
+       of window: scroll_max can no longer be INT_MAX.  When aggressive
+       scrolling is in use, don't let point enter the opposite scroll
+       margin as result of the scroll.
+       (syms_of_xdisp) <scroll-conservatively>: Document the
+       threshold of 100 lines for never-recentering scrolling.
+
+2011-03-31  Juanma Barranquero  <lekktu@gmail.com>
+
+       * dispextern.h (move_it_by_lines):
+       * xdisp.c (move_it_by_lines): Remove parameter `need_y_p', unused
+       since 2000-12-29T14:24:09Z!gerd@gnu.org.  All callers changed.
+       (message_log_check_duplicate): Remove parameters `prev_bol' and
+       `this_bol', unused since 1998-01-01T02:27:27Z!rms@gnu.org.  All callers changed.
+       (redisplay_internal): Remove parameter `preserve_echo_area',
+       unused since 1999-07-21T21:43:52Z!gerd@gnu.org.  All callers changed.
+
+       * indent.c (Fvertical_motion):
+       * window.c (window_scroll_pixel_based, Frecenter):
+       Don't pass `need_y_p' to `move_it_by_lines'.
+
+2011-03-30  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * eval.c (struct backtrace): Don't cheat with negative numbers, but do
+       steal a few bits to be more compact.
+       (interactive_p, Fbacktrace, Fbacktrace_frame, mark_backtrace):
+       Remove unneeded casts.
+
+       * bytecode.c (Fbyte_code): CAR and CDR can GC.
+
+2011-03-30  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
+
+       * keyboard.c (Fexecute_extended_command): Do log the "suggest key
+       binding" message (bug#7967).
+
+2011-03-30  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Fix more problems found by GCC 4.6.0's static checks.
+
+       * unexelf.c (unexec) [! (defined _SYSTYPE_SYSV || defined __sgi)]:
+       Remove unused local var.
+
+       * editfns.c (Fmessage_box): Remove unused local var.
+
+       * xdisp.c (try_window_reusing_current_matrix, x_produce_glyphs):
+       (note_mode_line_or_margin_highlight, note_mouse_highlight):
+       Omit unused local vars.
+       * window.c (shrink_windows): Omit unused local var.
+       * menu.c (digest_single_submenu): Omit unused local var.
+       * dispnew.c (update_window) [PERIODIC_PREEMPTION_CHECKING]:
+       Omit unused local var.
+
+       * keyboard.c (parse_modifiers_uncached, parse_modifiers):
+       Don't assume string length fits in int.
+       (keyremap_step, read_key_sequence): Use size_t for sizes.
+       (read_key_sequence): Don't check last_real_key_start redundantly.
+
+       * callproc.c (Fcall_process, Fcall_process_region): Use SAFE_ALLOCA
+       instead of alloca (Bug#8344).
+
+       * eval.c (Fbacktrace): Don't assume nargs fits in int.
+       (Fbacktrace_frame): Don't assume nframes fits in int.
+
+       * syntax.c (scan_sexps_forward): Avoid pointer wraparound.
+
+       * xterm.c (x_make_frame_visible, same_x_server): Redo to avoid overflow
+       concerns.
+
+       * term.c (produce_glyphless_glyph): Remove unnecessary test.
+
+       * cm.c (calccost): Turn while-do into do-while, for clarity.
+
+       * keyboard.c (syms_of_keyboard): Use the same style as later
+       in this function when indexing through an array.  This also
+       works around GCC bug 48267.
+
+       * image.c (tiff_load): Fix off-by-one image count (Bug#8336).
+
+       * xselect.c (x_check_property_data): Return correct size (Bug#8335).
+
+       * chartab.c (sub_char_table_ref_and_range): Redo for slight
+       efficiency gain, and to bypass a gcc -Wstrict-overflow warning.
+
+       * keyboard.c, keyboard.h (num_input_events): Now size_t.
+       This avoids undefined behavior on integer overflow, and is a bit
+       more convenient anyway since it is compared to a size_t variable.
+
+       Variadic C functions now count arguments with size_t, not int.
+       This avoids an unnecessary limitation on 64-bit machines, which
+       caused (substring ...) to crash on large vectors (Bug#8344).
+       * lisp.h (struct Lisp_Subr.function.aMANY): Now takes size_t, not int.
+       (DEFUN_ARGS_MANY, internal_condition_case_n, safe_call): Likewise.
+       All variadic functions and their callers changed accordingly.
+       (struct gcpro.nvars): Now size_t, not int.  All uses changed.
+       * data.c (arith_driver, float_arith_driver): Likewise.
+       * editfns.c (general_insert_function): Likewise.
+       * eval.c (struct backtrace.nargs, interactive_p)
+       (internal_condition_case_n, run_hook_with_args, apply_lambda)
+       (funcall_lambda, mark_backtrace): Likewise.
+       * fns.c (concat): Likewise.
+       * frame.c (x_set_frame_parameters): Likewise.
+       * fns.c (get_key_arg): Now accepts and returns size_t, and returns
+       0 if not found, not -1.  All callers changed.
+
+       * alloc.c (garbage_collect): Don't assume stack size fits in int.
+       (stack_copy_size): Now size_t, not int.
+       (stack_copy, stack_copy_size): Define only if MAX_SAVE_STACK > 0.
+
 2011-03-28  Juanma Barranquero  <lekktu@gmail.com>
 
        * coding.c (encode_designation_at_bol): Remove parameter `charbuf_end',
        (create_process): Use 'volatile' to avoid vfork clobbering (Bug#8298).
 
        Make tparam.h and terminfo.c consistent.
-       * cm.c (tputs, tgoto, BC, UP): Remove extern decls.  Include
-       tparam.h instead, since it declares them.
+       * cm.c (tputs, tgoto, BC, UP): Remove extern decls.
+       Include tparam.h instead, since it declares them.
        * cm.h (PC): Remove extern decl; tparam.h now does this.
        * deps.mk (cm.o, terminfo.o): Depend on tparam.h.
        * terminfo.c: Include tparam.h, to check interfaces.
 
        * intervals.h (CHECK_TOTAL_LENGTH): Avoid empty "else".
 
-       * atimer.c (start_atimer, append_atimer_lists, set_alarm): Rename
-       locals to avoid shadowing.
+       * atimer.c (start_atimer, append_atimer_lists, set_alarm):
+       Rename locals to avoid shadowing.
 
        * sound.c (wav_play, au_play, Fplay_sound_internal):
        Fix pointer signedness.
        gcc -Wbad-function-cast warning.
        (default_value, arithcompare, arith_driver, arith_error): Now static.
        (store_symval_forwarding): Rename local to avoid shadowing.
-       (Fmake_variable_buffer_local, Fmake_local_variable): Mark
-       variables as initialized.
+       (Fmake_variable_buffer_local, Fmake_local_variable):
+       Mark variables as initialized.
        (do_blv_forwarding, do_symval_forwarding): Remove; unused.
 
        * alloc.c (check_cons_list): Do not define unless GC_CHECK_CONS_LIST.
        (BUF_PT_BYTE): Rewrite to handle indirect buffers (Bug#8219).
        These macros can no longer be used for assignment.
 
-       * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Assign
-       struct members directly, instead of using BUF_BEGV etc.
+       * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
+       Assign struct members directly, instead of using BUF_BEGV etc.
        (record_buffer_markers, fetch_buffer_markers): New functions for
        recording and fetching special buffer markers.
        (set_buffer_internal_1, set_buffer_temp): Use them.
        * term.c (encode_terminal_code): Now external again, used by
        w32console.c and msdos.c.
 
-       * makefile.w32-in ($(BLD)/term.$(O), ($(BLD)/tparam.$(O)): Depend
-       on $(SRC)/tparam.h, see 2011-03-11T07:24:21Z!eggert@cs.ucla.edu.
+       * makefile.w32-in ($(BLD)/term.$(O), ($(BLD)/tparam.$(O)):
+       Depend on $(SRC)/tparam.h, see 2011-03-11T07:24:21Z!eggert@cs.ucla.edu.
 
 2011-03-11  Paul Eggert  <eggert@cs.ucla.edu>
 
        (x_delete_glyphs, x_ins_del_lines): Mark with NO_RETURN.
        (x_connection_closed): Tell GCC not to suggest NO_RETURN.
 
-       * xfaces.c (clear_face_cache, Fx_list_fonts, Fface_font): Rename
-       or move locals to avoid shadowing.
+       * xfaces.c (clear_face_cache, Fx_list_fonts, Fface_font):
+       Rename or move locals to avoid shadowing.
        (tty_defined_color, merge_face_heights): Now static.
        (free_realized_faces_for_fontset): Remove; not used.
        (Fx_list_fonts): Mark variable that gcc -Wuninitialized
        (xg_prepare_tooltip, xg_hide_tooltip): Call gdk_window_get_screen.
        (xg_prepare_tooltip, create_dialog, menubar_map_cb)
        (xg_update_frame_menubar, xg_tool_bar_detach_callback)
-       (xg_tool_bar_attach_callback, xg_update_tool_bar_sizes): Call
-       gtk_widget_get_preferred_size.
+       (xg_tool_bar_attach_callback, xg_update_tool_bar_sizes):
+       Call gtk_widget_get_preferred_size.
        (xg_frame_resized): gdk_window_get_geometry only takes 5
        parameters.
-       (xg_win_to_widget, xg_event_is_for_menubar): Call
-       gdk_x11_window_lookup_for_display.
+       (xg_win_to_widget, xg_event_is_for_menubar):
+       Call gdk_x11_window_lookup_for_display.
        (xg_set_widget_bg): New function.
        (delete_cb): New function.
        (xg_create_frame_widgets): connect delete-event to delete_cb.
        (produce_glyphless_glyph): Make a pointer "const"
        since it might point to immutable storage.
        (update_window_cursor): Now static, since it's not used elsewhere.
-       (SKIP_GLYPHS): Removed unused macro.
+       (SKIP_GLYPHS): Remove unused macro.
 
 2011-03-06  Michael Shields  <shields@msrl.com>  (tiny change)
 
        * xterm.c (x_send_scroll_bar_event, SET_SAVED_MENU_EVENT)
        (handle_one_xevent, x_check_errors, xim_initialize, x_term_init):
        Likewise.
-       * character.h (BCOPY_SHORT): Removed.
+       * character.h (BCOPY_SHORT): Remove.
        * config.in: Regenerate.
        * dispnew.c (safe_bcopy): Only define as dummy if PROFILING.
        * emacs.c (main) [PROFILING]: Don't declare
        Set xftfont_info->ft_size.  Don't unlock the face.  Check BDF
        properties if appropriate.
        (xftfont_close): Unlock the face.
-       (xftfont_anchor_point, xftfont_shape): Deleted.
+       (xftfont_anchor_point, xftfont_shape): Delete.
        (syms_of_xftfont): Don't set members anchor_point and shape of
        xftfont_driver.
 
        Delete externs.
        (fontset_from_font_name): Extern it.
        (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
-       (FONT_INFO_FROM_FACE): Deleted.
+       (FONT_INFO_FROM_FACE): Delete.
        (face_for_font): Adjust prototype.
 
        * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
        (fontset_compare_rfontdef): New function.
        (reorder_font_vector): Remove the argument CHARSET-ID.  Sort
        rfont-defs by qsort.  Adjusted for the change of font-group vector.
-       (load_font_get_repertory): Deleted.
+       (load_font_get_repertory): Delete.
        (fontset_find_font): Use new macros to ref/set elements of
        font-def and rfont-def.
        (fontset_font): Fix the timing of remembering that no font for C.
        font-def.
        (Fnew_fontset): Use font_unparse_xlfd to generate
        FONTSET_ASCII (fontset).
-       (new_fontset_from_font_name): Deleted.
+       (new_fontset_from_font_name): Delete.
        (fontset_from_font): Rename from new_fontset_from_font.  Check if
        a fontset is already created for the font.  FIx updating of
        Vfontset_alias_alist.
-       (fontset_ascii_font): Deleted.
+       (fontset_ascii_font): Delete.
        (Ffont_info): Adjust for the format change of font-spec.
        (Finternal_char_font): Likewise.
        (Ffontset_info): Likewise.
        (ftfont_list): Return a list, not vector.
        (ftfont_match): Use ftfont_spec_pattern to get a pattern.
        (ftfont_list_family): Don't downcase names.
-       (ftfont_free_entity): Deleted.
+       (ftfont_free_entity): Delete.
        (ftfont_open): Return a font-object.  Adjusted for the change of
        struct font.  Get underline_thickness and underline_position from
        font property.  Don't update dpyinfo->smallest_font_height and
        (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
        (Qp): Extern them.
        (clear_font_table, load_face_font, xlfd_lookup_field_contents):
-       Deleted.
-       (struct font_name): Deleted.
-       (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
+       Delete.
+       (struct font_name): Delete.
+       (xlfd_numeric_value, xlfd_symbolic_value): Delete.
        (compare_fonts_by_sort_order): New function.
        (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
        (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
-       Deleted.
+       Delete.
        (Fx_family_fonts): Use font_list_entities, and sort fonts by
        compare_fonts_by_sort_order.
        (Fx_font_family_list): Call Ffont_family_list.
        (free_font_names, sort_fonts, x_face_list_fonts)
        (face_font_available_p, sorted_font_list, cmp_font_names)
        (font_list_1, concat_font_list, font_list, remove_duplicates):
-       Deleted.
+       Delete.
        (Fx_list_fonts): Use Ffont_list.
-       (LFACE_AVGWIDTH): Deleted.
+       (LFACE_AVGWIDTH): Delete.
        (check_lface_attrs): Don't check LFACE_AVGWIDTH.  Check LFACE_FONT
        by FONTP.
        (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
        (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
        (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
        Compare fonts by EQ.
-       (lookup_non_ascii_face): Deleted.
+       (lookup_non_ascii_face): Delete.
        (face_for_font): The 2nd argument changed.
        (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
        Check atomic font properties by case insensitive.
 
        * xfont.c: Include <stdlib.h> and "ccl.h".
        (struct xfont_info): New structure.
-       (xfont_query_font): Deleted.
+       (xfont_query_font): Delete.
        (xfont_find_ccl_program): Rename from x_find_ccl_program and
        moved from xterm.c.
        (xfont_driver): Adjust for the change of struct font_driver.
        dpyinfo->smallest_char_width.
        (xfont_close): Don't free struct font.
        (xfont_prepare_face): Adjust for the change of struct font.
-       (xfont_done_face): Deleted.
+       (xfont_done_face): Delete.
        (xfont_has_char): Adjust for the change of struct font.
        (xfont_encode_char, xfont_draw): Likewise.
        (xfont_check): New function.
        * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
        conditionals.  Don't check enable_font_backend.  Delete all codes
        used only when USE_FONT_BACKEND is not defined.  Don't include ccl.h.
-       (x_per_char_metric, x_encode_char): Deleted.
+       (x_per_char_metric, x_encode_char): Delete.
        (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
        (x_compute_glyph_string_overhangs): Adjust for the change of
        `struct face'.
        (x_draw_glyph_string): Likewise.  Use font->underline_position and
        font->underline_thickness.
        (x_new_font): Rename from x_new_fontset2.
-       (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
+       (x_new_fontset, x_get_font_info, x_list_fonts): Delete.
        (x_check_font): Call `check' method of a font driver.
        (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
-       (x_query_font, x_get_font_repertory): Deleted.
+       (x_query_font, x_get_font_repertory): Delete.
        (x_find_ccl_program): Rename and moved to xfont.c.
        (x_redisplay_interface): Adjust for the change of `struct
        redisplay_interface'.