Merge changes from emacs-23 branch
authorChong Yidong <cyd@stupidchicken.com>
Sun, 18 Sep 2011 15:21:57 +0000 (11:21 -0400)
committerChong Yidong <cyd@stupidchicken.com>
Sun, 18 Sep 2011 15:21:57 +0000 (11:21 -0400)
1  2  3 
src/ChangeLog
src/search.c
src/xdisp.c

diff --cc src/ChangeLog
  -2011-09-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
+++2011-09-18  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
++ 
++      * xdisp.c (expose_window): Save original value of phys_cursor_on_p
++      and turn window cursor on if cleared (Bug#9415).
++ 
  -2011-09-07  Andreas Schwab  <schwab@linux-m68k.org>
+++2011-09-18  Andreas Schwab  <schwab@linux-m68k.org>
++ 
++      * search.c (boyer_moore): Take unibyte characters from pattern
++      literally.  (Bug#9458)
++ 
  -2011-08-30  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * syntax.c (find_defun_start): Update all cache variables if
  -     exiting early (Bug#9401).
  -
  -2011-08-19  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * keyboard.c: Include "process.h"
  -
  -2011-07-28  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * xfaces.c (update_face_from_frame_parameter): Move out of
  -     HAVE_WINDOW_SYSTEM portion.  Condition window-system only parts
  -     with HAVE_WINDOW_SYSTEM.
  -
  -2011-07-26  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * fontset.c (fontset_get_font_group): Add proper type checks.
  -     (Bug#9172)
  -
  -2011-07-23  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * unexmacosx.c (print_load_command_name): Add cases LC_FUNCTION_STARTS
  -     and LC_VERSION_MIN_MACOSX.
  -     (copy_linkedit_data) [LC_FUNCTION_STARTS]: New function.
  -     (dump_it) [LC_FUNCTION_STARTS]: Use it.
  -
  -2011-07-22  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * frame.c (Fmodify_frame_parameters): In tty case, update the
  -     default face if necessary (Bug#4238).
  -
  -2011-07-11  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add -fno-pie so as to suppress
  -     address randomization (Bug#8395).
  -
  -2011-07-07  Kenichi Handa  <handa@m17n.org>
  -
  -     * composite.c (composition_compute_stop_pos): Ignore a static
  -     composition starting before CHARPOS (Bug#8915).
  -
  -     * xdisp.c (handle_composition_prop): Likewise.
  -
  -2011-06-18  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * dispnew.c (scrolling_window): Before scrolling, turn off a
  -     mouse-highlight in the window being scrolled.
  -
  -2011-06-16  Paul Eggert  <eggert@cs.ucla.edu>
  -
  -     * nsmenu.m: Replace all uses of XVECTOR with ASIZE and AREF.  (Bug#8839)
  -
  -2011-06-02  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * emacs.c (main): Warn when starting a GTK emacs in daemon mode.
  -
  -2011-06-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * fringe.c (update_window_fringes): Don't update overlay arrow bitmap
  -     in the current matrix if keep_current_p is non-zero.
  -
  -2011-05-25  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * dispextern.h (struct glyph_row): New member fringe_bitmap_periodic_p.
  -
  -     * dispnew.c (shift_glyph_matrix, scrolling_window): Mark scrolled row
  -     for fringe update if it has periodic bitmap.
  -     (row_equal_p): Also compare left_fringe_offset, right_fringe_offset,
  -     and fringe_bitmap_periodic_p.
  -
  -     * fringe.c (get_fringe_bitmap_data): New function.
  -     (draw_fringe_bitmap_1, update_window_fringes): Use it.
  -     (update_window_fringes): Record periodicity of fringe bitmap in glyph
  -     row.  Mark glyph row for fringe update if periodicity changed.
  -
  -     * xdisp.c (try_window_reusing_current_matrix): Don't mark scrolled row
  -     for fringe update unless it has periodic bitmap.
  -
  -2011-05-25  Kenichi Handa  <handa@m17n.org>
  -
  -     * xdisp.c (get_next_display_element): Set correct it->face_id for
  -     a static composition.
  -
  -2011-05-21  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * dispnew.c (scrolling_window): Don't exclude the case that the
  -     last enabled row in the desired matrix touches the bottom boundary.
  -
  -2011-05-11  Drew Adams  <drew.adams@oracle.com>
  -
  -     * textprop.c (Fprevious_single_char_property_change): Doc fix (bug#8655).
  -
  -2011-05-11  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * w32term.c (w32_draw_fringe_bitmap): Rename local vars `left' and
  -     `width' to `bar_area_x' and `bar_area_width', respectively.
  -     (x_scroll_run): Take account of fringe background extension.
  -
  -     * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]: Rename
  -     local vars `left' and `width' to `bar_area_x' and
  -     `bar_area_width', respectively.
  -     (x_scroll_run) [USE_TOOLKIT_SCROLL_BARS]: Take account of fringe
  -     background extension.
  -
  -2011-05-09  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * xmenu.c (set_frame_menubar): Fix submenu loops.
  -
  -2011-05-09  Eli Zaretskii  <eliz@gnu.org>
  -
  -     Backport revisions 103939.1.41..103939.1.44 (inclusive) from trunk.
  -     (bug#8623)
  -     The next log entry shows the actual changes by Paul Eggert.
  -
  -2011-05-08  Paul Eggert  <eggert@cs.ucla.edu>
  -
  -     Fix a problem with aliasing and vector headers.
  -     GCC 4.6.0 optimizes based on type-based alias analysis.  For
  -     example, if b is of type struct buffer * and v of type struct
  -     Lisp_Vector *, then gcc -O2 was incorrectly assuming that &b->size
  -     != &v->size, and therefore "v->size = 1; b->size = 2; return
  -     v->size;" must therefore return 1.  This assumption is incorrect
  -     for Emacs, since it type-puns struct Lisp_Vector * with many other
  -     types.  To fix this problem, this patch adds a new type struct
  -     vector_header that documents the constraints on layout of vectors
  -     and pseudovectors, and helps optimizing compilers not get fooled
  -     by Emacs's type punning.  It also adds the macros XSETTYPED_PVECTYPE
  -     XSETTYPED_PSEUDOVECTOR, TYPED_PSEUDOVECTORP, for similar reasons.
  -     * lisp.h (XVECTOR_SIZE): New convenience macro.  All previous uses of
  -     XVECTOR (foo)->size replaced to use this macro, to avoid the hassle
  -     of writing XVECTOR (foo)->header.size.
  -     * lisp.h: Say "vectorlike header" rather than "vector header.
  -     (struct vectorlike_header): Rename from struct vector_header.
  -     (XVECTORLIKE_HEADER_SIZE): Renamed from XVECTOR_HEADER_SIZE.
  -     All uses changed.
  -     (XVECTOR_HEADER_SIZE): New macro, for use in XSETPSEUDOVECTOR.
  -     (XSETTYPED_PVECTYPE): New macro, specifying the name of the size
  -     member.
  -     (XSETPVECTYPE): Rewrite in terms of new macro.
  -     (XSETPVECTYPESIZE): New macro, specifying both type and size.
  -     This is a bit clearer, and further avoids the possibility of
  -     undesirable aliasing.
  -     (XSETTYPED_PSEUDOVECTOR): New macro, specifying the size.
  -     (XSETPSEUDOVECTOR): Rewrite in terms of XSETTYPED_PSEUDOVECTOR
  -     and XVECTOR_HEADER_SIZE.
  -     (XSETSUBR): Rewrite in terms of XSETTYPED_PSEUDOVECTOR and XSIZE,
  -     since Lisp_Subr is a special case (no "next" field).
  -     (ASIZE): Rewrite in terms of XVECTOR_SIZE.
  -     (struct vector_header): New type.
  -     (TYPED_PSEUDOVECTORP): New macro, also specifying the C type of the
  -     object, to help avoid aliasing.
  -     (PSEUDOVECTORP): Rewrite in terms of TYPED_PSEUDOVECTORP.
  -     (SUBRP): Likewise, since Lisp_Subr is a special case.
  -
  -     * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table):
  -     (struct Lisp_Sub_Char_Table, struct Lisp_Bool_Vector):
  -     (struct Lisp_Hash_Table): Combine first two members into a single
  -     struct vector_header member.  All uses of "size" and "next" members
  -     changed to be "header.size" and "header.next".
  -     * buffer.h (struct buffer): Likewise.
  -     * font.h (struct font_spec, struct font_entity, struct font): Likewise.
  -     * frame.h (struct frame): Likewise.
  -     * process.h (struct Lisp_Process): Likewise.
  -     * termhooks.h (struct terminal): Likewise.
  -     * window.c (struct save_window_data, struct saved_window): Likewise.
  -     * window.h (struct window): Likewise.
  -     * alloc.c (allocate_buffer, Fmake_bool_vector, allocate_pseudovector):
  -     Use XSETPVECTYPESIZE, not XSETPVECTYPE, to avoid aliasing problems.
  -     * buffer.c (init_buffer_once): Likewise.
  -     * lread.c (defsubr): Use XSETTYPED_PVECTYPE, since Lisp_Subr is a
  -     special case.
  -     * process.c (Fformat_network_address): Use local var for size,
  -     for brevity.
  -     * fns.c (vector): Remove; this old hack is no longer needed.
  -     * bytecode.c (exec_byte_code): Don't use XVECTOR before CHECK_VECTOR.
  -
  -2011-04-29  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * w32heap.c (allocate_heap) [USE_LISP_UNION_TYPE || USE_LSB_TAG]:
  -     New version that can reserve upto 2GB of heap space.
  -
  -2011-04-26  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * nsfns.m (Fns_read_file_name): Doc fix (Bug#8534).
  -
  -2011-04-18  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * s/ms-w32.h (localtime): Redirect to sys_localtime.
  -
  -     * w32.c: Include <time.h>.
  -     (sys_localtime): New function.
  -
  -2011-04-13  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (init_xdisp): Initialize echo_area_window (Bug#6451).
  -
  -2011-04-10  Samuel Thibault  <sthibault@debian.org>  (tiny change)
  -
  -     * sysdep.c (wait_for_termination): On GNU Hurd, kill returns -1 on
  -     zombies (Bug#8467).
  -
  -2011-04-10  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * buffer.c (syms_of_buffer): Doc fix (Bug#6902).
  -
  -2011-04-08  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * ftfont.c (get_adstyle_property, ftfont_pattern_entity): Use
  -     unsigned char, to match FcChar8 type definition.
  -
  -     * xterm.c (handle_one_xevent):
  -     * xmenu.c (create_and_show_popup_menu):
  -     * xselect.c (x_decline_selection_request)
  -     (x_reply_selection_request): Avoid type-punned deref of X events.
  -
  -2011-04-08  Samuel Thibault  <sthibault@debian.org>  (tiny change)
  -
  -     * term.c (init_tty): Fix incorrect ifdef placement (Bug#8450).
  -
  -2011-03-19  Christoph Scholtes  <cschol2112@googlemail.com>
  -
  -     * process.c (Fformat_network_address): Doc fix.
  -
  -2011-03-19  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * buffer.h (BUF_BEGV, BUF_BEGV_BYTE, BUF_ZV, BUF_ZV_BYTE, BUF_PT)
  -     (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.
  -     (record_buffer_markers, fetch_buffer_markers): New functions for
  -     recording and fetching special buffer markers.
  -     (set_buffer_internal_1, set_buffer_temp): Use them.
  -
  -     * lread.c (unreadchar): Use SET_BUF_PT_BOTH.
  -
  -     * insdel.c (adjust_point): Use SET_BUF_PT_BOTH.
  -
  -     * intervals.c (temp_set_point_both): Use SET_BUF_PT_BOTH.
  -     (get_local_map): Use SET_BUF_BEGV_BOTH and SET_BUF_ZV_BOTH.
  -
  -     * xdisp.c (hscroll_window_tree):
  -     (reconsider_clip_changes): Use PT instead of BUF_PT.
  -
  -2011-03-17  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * xfaces.c (Fx_load_color_file):
  -     Read color file from absolute filename (bug#8250).
  -
  -2011-03-11  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     Backport revno:103582 from trunk.
  -     * w32xfns.c (select_palette): Check success of RealizePalette against
  -     GDI_ERROR, not zero.
  -
  -2011-03-11  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * fringe.c (update_window_fringes): Remove unused variables.
  -
  -     * unexmacosx.c (copy_data_segment): Also copy __got section.
  -     (Bug#8223)
  -
  -2011-03-07  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * Version 23.3 released.
  -
  -2011-02-22  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_open_entity): Be sure to set scaled_pixel_size.
  -     (font_find_for_lface): Check if attrs[LFACE_HEIGHT_INDEX] is
  -     integer.
  -
  -2011-02-19  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * Makefile.in (prefix-args${EXEEXT}): Compile with ALL_CFLAGS.
  -
  -2011-02-13  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * xdisp.c (redisplay_internal): Resynchronize `w' if the selected
  -     window is changed inside calls to do_pending_window_change.
  -     (Bug#8020)
  -
  -2011-02-12  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * terminal.c (create_terminal): Use default-keyboard-coding-system
  -     and default-terminal-coding-system to initialize coding systems of
  -     the new terminal.  (Bug#7840)
  -
  -2011-02-09  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * window.c (select_window): Check inhibit_point_swap argument when
  -     deciding whether to return immediately.
  -
  -2011-02-08  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * nsterm.m (setFrame, initFrame): Make sure pixel_height doesn't become
  -     zero (Bug#7348).
  -
  -2011-02-03  Glenn Morris  <rgm@gnu.org>
  -
  -     * xfaces.c (Finternal_set_lisp_face_attribute):
  -     Try to clarify some error messages.  (Bug#2659)
  -
  -2011-02-02  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * editfns.c (save_restriction_restore): Don't forget to invalidate the
  -     current_column cache (bug#7946).
  -
  -2011-02-02  Kenichi Handa  <handa@m17n.org>
  -
  -     * ftfont.c (ftfont_open): Use FC_DUAL only when it is defined.
  -
  -     * xftfont.c (xftfont_open): Likewise.
  -
  -2011-02-01  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * window.c (Fselect_window): Add missing return value.
  -
  -2011-01-29  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * image.c (DEF_IMGLIB_FN): Add parameter rettype, use it instead
  -     of int.  All uses adjusted.
  -     (PNG_JMPBUF, png_load, jpeg_load, tiff_load, gif_load)
  -     (svg_load_image): Remove casts.
  -
  -2011-01-29  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * image.c (fn_png_longjmp, fn_png_set_longjmp_fn): New png
  -     function definitions for compiling with libpng-1.5.
  -     (PNG_LONGJMP, PNG_JMPBUF): New macros for libpng-1.5.
  -     (my_png_error, png_load): Use them.  Suggested by Thomas Klausner
  -     (Bug#7908).
  -
  -2011-01-28  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * m/intel386.h: Define NO_ARG_ARRAY.  Suggested by Dan Nicolaescu.
  -
  -2011-01-27  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * font.c (font_parse_fcname): Require GTK-style font sizes to
  -     occur at the end of the font string (Bug#7853).
  -
  -2011-01-26  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * font.c (font_parse_fcname): Fix typo in string length.
  -
  -2011-01-24  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * xdisp.c (handle_fontified_prop): Be careful with font-lock changing
  -     the buffer's point-max (bug#7876).
  -
  -2011-01-23  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * lisp.h (XPNTR): Obey DATA_SEG_BITS in all non-USE_LSB_TAG cases.
  -     Remove unused HAVE_SHM branch (Bug#6811).
  -
  -2011-01-23  Peter O'Gorman  <bug-gnu-emacs@mlists.thewrittenword.com>  (tiny change)
  -
  -     * s/hpux11.h: Set CANNOT_DUMP on IA64 (Bug#6811).
  -
  -2011-01-22  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * window.c (select_window): New function.
  -     (Fselect_window): Call it.
  -     (inhibit_point_swap): Variable deleted.
  -     (Fset_window_configuration): Call select_window directly.
  -
  -2011-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * image.c (syms_of_image): Don't access XSYMBOL's internals directly.
  -
  -2011-01-16  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * image.c (syms_of_image): Don't use SET_SYMBOL_VALUE.  (Bug#7848)
  -
  -2011-01-15  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * window.c (inhibit_point_swap): New variable.
  -     (Fselect_window): If inhibit_point_swap is nonzero, avoid swapping
  -     point this time.
  -     (Fset_window_configuration): Set inhibit_point_swap to 1 instead
  -     of setting selected_window to nil (Bug#7728).
  -
  -2011-01-12  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * config.in (TERMINFO): New definition.
  -
  -     * s/netbsd.h: Use it to choose between terminfo and termcap
  -     (Bug#7642).
  -
  -2011-01-03  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * coding.h (ENCODE_UTF_8): Remove "Used by ..." comment.
  -
  -     * nsfns.m (ns_set_name_iconic): Remove.
  -     (ns_get_screen): Don't assign integer to f.
  -     (ns_set_name_internal): New function (Bug#7517).
  -     (Vicon_title_format): Extern declare.
  -     (ns_set_name): Call ns_set_name_internal.
  -     (x_explicitly_set_name): Remove call to ns_set_name_iconic.
  -     (x_implicitly_set_name): Ditto.
  -     (x_set_title): Remove commet about EXPLICIT.  Call ns_set_name_internal.
  -     (ns_set_name_as_filename): Encode name with ENCODE_UTF_8.
  -     Always use buffer name for title and buffer filename only for
  -     RepresentedFilename.  Handle bad UTF-8 in buffer name (Bug#7517).
  -
  -2011-01-03  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * image.c (png_jmpbuf): Remove definition.
  -     (my_png_error, png_load): Don't use png_jmpbuf.
  -
  -2010-12-31  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * image.c <Qlibpng_version>: New variable.
  -     (syms_of_image): Intern and staticpro it.  Set its value to the
  -     version of PNG library we were compiled with.
  -     (my_png_error, png_load): Avoid GCC warnings about direct access
  -     to png_ptr->jmpbuf.  (Bug#7716)
  -     (png_jmpbuf): New macro.
  -     (my_png_error, png_load): Use it instead of #ifdef'ing according
  -     to PNG_LIBPNG_VER_MAJOR and PNG_LIBPNG_VER_MINOR.
  -
  -2010-12-27  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * .gdbinit (xgetptr): Fix the union+lsb case.
  -     (xbacktrace): Fix the union case.
  -
  -2010-12-26  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * window.c (Fmove_to_window_line): Avoid abort when called in a buffer
  -     different from selected-window's.
  -
  -2010-12-25  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * keyboard.c (parse_menu_item): Prepend "  " to the key sequence
  -     equivalent of a menu item when the key sequence is given by the
  -     `:keys' attribute.  (Bug#7662)
  -
  -     * xdisp.c (Fformat_mode_line): Doc fix: no need to state that only
  -     the basic faces are supported.
  -
  -2010-12-24  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xterm.c (x_check_fullscreen): Fix pixel/character mixup.
  -
  -2010-12-17  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * xdisp.c (Fformat_mode_line): Fix last change.
  -
  -2010-12-16  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (Fformat_mode_line): Restrict the FACE argument to basic
  -     faces (Bug#7587).
  -
  -2010-12-13  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * fileio.c (Fexpand_file_name): One more doc fix.
  -
  -2010-12-12  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * fileio.c (Fexpand_file_name): Doc fix.  (Bug#7617)
  -
  -2010-12-11  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * w32fns.c (Fx_show_tip): Call try_window with last argument
  -     TRY_WINDOW_IGNORE_FONTS_CHANGE.  Delete the TODO ifdef: problem
  -     solved.  Round up the tip height to an integral multiple of the
  -     frame's line height.  Add FRAME_COLUMN_WIDTH to the tip width.
  -     (Bug#7398)
  -
  -     * xdisp.c (string_pos_nchars_ahead, c_string_pos)
  -     (face_before_or_after_it_pos, next_element_from_string)
  -     (next_element_from_c_string, produce_stretch_glyph): Remove unused
  -     calculations of maximum string length before calling
  -     string_char_and_length and STRING_CHAR_AND_LENGTH.
  -     (string_char_and_length): Update commentary: MAXLEN is no longer
  -     needed.
  -
  -2010-12-10  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * keyboard.c (kbd_buffer_get_event): Construct SAVE_SESSION_EVENT
  -     as (Qsave_session arg).
  -
  -     * xsmfns.c (smc_interact_CB): Set arg to Qnil.
  -     (smc_die_CB): Make an event with arg Qt.
  -     (Fhandle_save_session): If event has Qt as argument,
  -     call Fkill_emacs (Bug#7552).
  -
  -2010-12-07  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xsmfns.c (smc_die_CB): Call Fkill_emacs (Bug#7552).
  -
  -2010-12-06  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * dispextern.h (struct it): New member overlay_strings_charpos.
  -
  -     * xdisp.c (next_overlay_string, load_overlay_strings): Record the
  -     charpos where we computed n_overlay_strings.
  -     (next_overlay_string): Load overlay strings at recorded position,
  -     which may not be the same as the iterator's charpos (Bug#7016).
  -
  -2010-12-05  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * nsterm.m (ns_dumpglyphs_image): If drawing cursor, fill background
  -     with cursor color and draw a rectangle around the image (Bug#7412).
  -
  -2010-12-05  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (try_scrolling): Avoid infloop if the first line is
  -     obscured due to a vscroll (Bug#7537).
  -
  -2010-12-02  Jan Djärv  <jhd@zeplinf.localdomain>
  -
  -     * nsterm.h (FRAME_NS_TOOLBAR_HEIGHT): Rename to FRAME_TOOLBAR_HEIGHT.
  -
  -     * nsterm.m (x_set_window_size, windowWillResize, initFrameFromEmacs):
  -     Use FRAME_TOOLBAR_HEIGHT.
  -     (x_set_offset): Handle XNegative and YNegative in
  -     f->size_hint_flags (Bug#7510).
  -
  -2010-11-25  Kenichi Handa  <handa@m17n.org>
  -
  -     * charset.c (emacs_mule_charset): Make it an array of charset ID;
  -     i.e. integer.
  -     (Fdefine_charset_internal): Adjusted for the above change.
  -     (init_charset_once): Likewise.
  -
  -     * charset.h (emacs_mule_charset): Adjust the prototype.  Delete
  -     duplicated extern.
  -
  -     * coding.c (emacs_mule_char): Adjust for the change of
  -     emacs_mule_charset.
  -
  -     * lread.c (read_emacs_mule_char): Adjust for the change of
  -     emacs_mule_charset.
  -
  -2010-11-22  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * w32.c (_PROCESS_MEMORY_COUNTERS_EX): Don't define with versions
  -     of w32api >= 3.15.  (Bug#6989)  (Bug#7452)
  -
  -2010-11-22  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * alloc.c (mark_terminals): Ensure that the image cache is marked
  -     even if the terminal object was marked earlier (Bug#6301).
  -
  -2010-11-21  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * editfns.c (Fbyte_to_string): Signal an error arg is not a byte.
  -
  -2010-11-20  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * gtkutil.c (menubar_map_cb): New function (Bug#7425).
  -     (xg_update_frame_menubar): Connect signal map to menubar_map_cb.
  -     Use 23 as menubar height if 0.  (Bug#7425).
  -
  -2010-11-14  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xsettings.c (init_gconf): Check HAVE_G_TYPE_INIT.
  -
  -     * config.in (HAVE_G_TYPE_INIT): New symbol.
  -
  -2010-11-12  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * lread.c (Fload): Mention `load-in-progress' and
  -     `load-file-name'.  (Bug#7346)
  -
  -2010-11-09  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * keyboard.c (kbd_buffer_nr_stored): Define only ifdef subprocesses.
  -     (kbd_buffer_store_event_hold, kbd_buffer_get_event)
  -     (tty_read_avail_input): Call kbd_buffer_nr_stored only ifdef
  -     subprocesses.  Use buffer_free only ifdef subprocesses.
  -
  -     * process.c (init_process) [subprocesses]: Init kbd_is_on_hold in
  -     the subprocesses version, not in the non-subprocesses one.
  -
  -     * Makefile.in: Don't use ## comment, it breaks the MSDOS build.
  -
  -     * xfns.c (x_real_positions): Fix declaration-after-statement
  -     problem.
  -
  -2010-11-05  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * image.c (free_image): Don't garbage the frame here, since this
  -     function can be called while redisplaying (Bug#7210).
  -     (uncache_image): Garbage the frame here (Bug#6426).
  -
  -2010-11-04  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * process.c (Fmake_network_process): Don't apply Bug#5173 fix for
  -     Windows.
  -
  -2010-11-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * process.c (Fmake_network_process): Don't call turn_on_atimers around
  -     `connect' (Bug#5723).
  -
  -2010-11-04  Helmut Eller  <eller.helmut@gmail.com>
  -
  -     * process.c (Fmake_network_process): Call `select' for interrupted
  -     `connect' rather than creating new socket (Bug#5173).
  -
  -2010-11-04  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_delete_unmatched): Check Vface_ignored_fonts.
  -     Don't sheck SPEC if it is nil.
  -     (font_list_entities): Call font_delete_unmatched if
  -     Vface_ignored_fonts is non-nil.
  -
  -2010-11-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * dispextern.h (TRY_WINDOW_CHECK_MARGINS)
  -     (TRY_WINDOW_IGNORE_FONTS_CHANGE): New defines.
  -
  -     * xdisp.c (try_window): Change arg from CHECK_MARGINS to FLAGS.
  -     Don't abort with fonts change if TRY_WINDOW_IGNORE_FONTS_CHANGE is
  -     set in FLAGS.  Callers with non-zero CHECK_MARGINS changed to use
  -     TRY_WINDOW_CHECK_MARGINS.
  -
  -     * xfns.c (Fx_show_tip): Undo last change.  Call try_window with
  -     TRY_WINDOW_IGNORE_FONTS_CHANGE (Bug#2423).
  -
  -2010-11-04  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xfns.c (x_real_positions): Only use _NET_FRAME_EXTENTS if our
  -     parent is the root window.  Check this after traversing window tree.
  -
  -     * xterm.c (x_term_init): Initialize Xatom_net_frame_extents.
  -
  -     * xterm.h (struct x_display_info): Xatom_net_frame_extents is new.
  -
  -     * xfns.c (x_real_positions): Try to get _NET_FRAME_EXTENTS first
  -     before traversing window tree (Bug#5721).
  -
  -2010-11-03  Glenn Morris  <rgm@gnu.org>
  -
  -     * Makefile.in (CRT_DIR): New variable, set by configure.
  -     * m/amdx86-64.h, m/ibms390x.h (START_FILES, LIB_STANDARD):
  -     Use $CRT_DIR rather than HAVE_LIB64_DIR.  (Bug#5655)
  -
  -2010-11-01  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * process.c (kbd_is_on_hold): New variable.
  -     (hold_keyboard_input, unhold_keyboard_input, kbd_on_hold_p):
  -     New functions.
  -     (wait_reading_process_output): If kbd_on_hold_p returns non-zero,
  -     select on empty input mask.
  -     (init_process): Initialize kbd_is_on_hold to 0.
  -
  -     * process.h (hold_keyboard_input, unhold_keyboard_input)
  -     (kbd_on_hold_p): Declare.
  -
  -     * keyboard.c (input_available_signal): Declare.
  -     (kbd_buffer_nr_stored): New function.
  -     (kbd_buffer_store_event_hold): If kbd_buffer_nr_stored returns
  -     more than KBD_BUFFER_SIZE/2, stop reding input (Bug#6571).
  -     (kbd_buffer_get_event): If input is suspended and kbd_buffer_nr_stored
  -     returns less than KBD_BUFFER_SIZE/4, resume reding input (Bug#6571).
  -     (tty_read_avail_input): If input is on hold, return.
  -     Don't read more that free slots in kbd_buffer (Bug#6571).
  -
  -2010-10-31  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xterm.c (x_connection_closed): Print informative error message
  -     when aborting on GTK.  This requires using shut_down_emacs
  -     directly instead of Fkill_emacs.
  -
  -2010-10-25  Michael Albinus  <michael.albinus@gmx.de>
  -
  -     * dbusbind.c (Fdbus_call_method_asynchronously)
  -     (Fdbus_register_signal, Fdbus_register_method): Check, whether
  -     `dbus-registered-objects-table' is initialized.
  -
  -2010-10-24  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xterm.c (x_connection_closed): Kill Emacs unconditionally.
  -
  -2010-10-22  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * frame.c (Fframep, Fwindow_system): Deprecate use as a predicate.
  -
  -     * dispnew.c (syms_of_display) <initial-window-system, window-system>:
  -     Deprecate use as a boolean flag.
  -
  -2010-10-18  Ken Brown  <kbrown@cornell.edu>
  -
  -     * s/cygwin.h (SIGNALS_VIA_CHARACTERS): New define (bug#7225).
  -
  -2010-10-15  Kenichi Handa  <handa@m17n.org>
  -
  -     Fix incorrect font metrics when the same font is opened with
  -     different pixelsizes.
  -
  -     * xftfont.c: Include composite.h.
  -     (xftfont_shape): New function.
  -     (syms_of_xftfont): Set xftfont_driver.shape.
  -
  -2010-10-13  Damyan Pepper  <damyanp@gmail.com>
  -
  -     Fix handling of font properties on Windows (bug#6303).
  -     * font.c (font_filter_properties): New function, refactored from
  -     ftfont_filter_properties.
  -     * font.h (font_filter_properties): Declare.
  -     * ftfont.c (ftfont_filter_properties): Use font_filter_properties.
  -     * w32font.c (w32font_booleans, w32font_non_booleans): New variables.
  -     (w32font_filter_properties): New function.
  -     (w32font_driver): Add w32font_filter_properties.
  -
  -2010-10-12  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * font.c (Ffont_variation_glyphs):
  -     * ccl.c (Fccl_execute_on_string): Fix typo in docstring.
  -
  -2010-10-10  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * nsterm.m (Qleft): Declare.
  -     (ns_right_alternate_modifier): New variable
  -     (NSRightAlternateKeyMask): New define.
  -     (EV_MODIFIERS): Parse NSRightAlternateKeyMask if
  -     ns_right_alternate_modifier isn't Qleft.
  -     (keyDown): If ns_right_alternate_modifier isn't Qleft, use it
  -     as emacs modifier for NSRightAlternateKeyMask.
  -     (syms_of_nsterm): DEFVAR_LISP ns-right-alternate-modifier.
  -
  -2010-10-08  Michael Albinus  <michael.albinus@gmx.de>
  -
  -     * dbusbind.c (xd_get_dispatch_status): Return a Lisp_Object.
  -     (xd_pending_messages): Catch xd_get_dispatch_status calls.
  -
  -2010-10-08  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (complement_process_encoding_system): Fix previous change.
  -
  -2010-10-03  Michael Albinus  <michael.albinus@gmx.de>
  -
  -     * dbusbind.c (syms_of_dbusbind): Move putenv call ...
  -     (Fdbus_init_bus): ... here.  (Bug#7113)
  -
  -2010-10-03  Glenn Morris  <rgm@gnu.org>
  -
  -     * buffer.c (before-change-functions, after-change-functions):
  -     Three-year overdue doc fix following 2007-08-13 change.
  -
  -2010-10-02  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (coding_inherit_eol_type): If parent doesn't specify
  -     eol-format, inherit from the system's default.
  -     (complement_process_encoding_system): Make a new coding system
  -     inherit the original eol-format.
  -
  -2010-09-30  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (complement_process_encoding_system): New function.
  -
  -     * coding.h (complement_process_encoding_system): Extern it.
  -
  -     * callproc.c (Fcall_process): Complement the coding system for
  -     encoding arguments.
  -     (Fcall_process_region): Complement the coding system for encoding
  -     the input to the process.
  -
  -     * process.c (Fstart_process): Complement the coding system for
  -     encoding arguments.
  -     (send_process): Complement the coding system for encoding what
  -     sent to the process.
  -
  -2010-09-29  Kenichi Handa  <handa@m17n.org>
  -
  -     * xfont.c (xfont_open): Fix setting of font->average_width from
  -     :avgwidth property (Bug#7123).
  -
  -2010-09-28  Michael Albinus  <michael.albinus@gmx.de>
  -
  -     * dbusbind.c (syms_of_dbusbind): Use putenv instead of setenv, it
  -     is more portable.
  -
  -     * keyboard.c (gobble_input): Move call of xd_read_queued_messages ...
  -     (kbd_buffer_get_event): ... here.  This is needed for cygwin, which
  -     has not defined SIGIO.
  -
  -2010-09-27  Michael Albinus  <michael.albinus@gmx.de>
  -
  -     * dbusbind.c (syms_of_dbusbind): Set $DBUS_FATAL_WARNINGS to "0".
  -     (Bug#7113)
  -
  -2010-09-26  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xgselect.c (xg_select): Clear file descriptors not set from
  -     rfds and wfds.
  -
  -2010-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * syntax.c (back_comment): Detect the case where a 1-char comment
  -     starter is also the 2nd char of a 2-char comment ender.
  -
  -2010-09-17  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * gtkutil.c (xg_tool_bar_menu_proxy): Set gtk-menu-items to TRUE.
  -
  -2010-09-12  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xterm.c (get_current_vm_state): New function.
  -     (do_ewmh_fullscreen): Call get_current_vm_state and compare with
  -     want_fullscreen so set_wm_state calls are few (Bug#7013).
  -     (x_handle_net_wm_state): Move code to get_current_vm_state and
  -     call that function.
  -
  -2010-09-11  Courtney Bane  <emacs-bugs-7626@cbane.org>  (tiny change)
  -
  -     * term.c (tty_set_terminal_modes): Don't initialize twice (bug#7002).
  -
  -2010-09-08  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (encode_coding_iso_2022): Don't optimize for ASCII if
  -     we may use designation or locking-shift.
  -
  -2010-09-07  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (detect_coding_emacs_mule): Fix checking of multibyte
  -     sequence when the source is multibyte.
  -
  -2010-08-31  Kenichi Handa  <handa@m17n.org>
  -
  -     * dispextern.h (FACE_FOR_CHAR): Use an ASCII face for 8-bit
  -     characters.
  -
  -     * term.c (encode_terminal_code): Fix the previous change.
  -     (produce_glyphs): Don't set it->char_to_display here.
  -     Don't handle unibyte-display-via-language-environment here.
  -     (produce_special_glyphs): Set temp_it.char_to_display before
  -     calling produce_glyphs.
  -
  -     * xdisp.c (get_next_display_element): Set it->char_to_display
  -     here.  Convert all 8-bit bytes from unibyte buffer/string to 8-bit
  -     characters.
  -     (get_overlay_arrow_glyph_row): Set it.char_to_display too before
  -     calling PRODUCE_GLYPHS.
  -     (append_space_for_newline): Save and store it->char_to_display.
  -     Set it->char_to_display before calling PRODUCE_GLYPHS.
  -     (extend_face_to_end_of_line): Set it->char_to_display before
  -     calling PRODUCE_GLYPHS.
  -     (get_glyph_face_and_encoding): Set the glyph code an 8-bit
  -     character to its byte value.
  -     (get_char_glyph_code): New function.
  -     (produce_stretch_glyph): Set it2.char_to_display too before
  -     calling x_produce_glyphs.
  -     (x_produce_glyphs): Simplify by using the same code for ASCII and
  -     non-ASCII characters.  Don't set it->char_to_display here.
  -     Don't handle unibyte-display-via-language-environment here.  For a
  -     character of no glyph, use font->space_width instead of FONT_WIDTH.
  -
  -2010-08-29  Kenichi Handa  <handa@m17n.org>
  -
  -     * term.c (encode_terminal_code): Encode byte chars to the
  -     correspnding bytes.
  -
  -2010-08-17  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * eval.c (Flet, Feval, Fapply, apply_lambda): Use SAFE_ALLOCA_LISP
  -     instead of SAFE_ALLOCA.
  -
  -2010-08-17  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * eval.c (Flet, Feval, Fapply, apply_lambda): Use SAFE_ALLOCA
  -     (Bug#6214).
  -
  -2010-08-14  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * doc.c (Fsnarf_documentation): Set skip_file only if p[1] is S.
  -
  -2010-08-13  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * doc.c (Fsnarf_documentation): Initialize skip_file before
  -     build-files test.
  -
  -2010-08-09  Peter O'Gorman <pogma@thewrittenword.com>  (tiny change)
  -
  -     * s/hpux10-20.h (HAVE_TERMIOS, NO_TERMIO, ORDINARY_LINK):
  -     New definitions.
  -     (HAVE_TERMIO): Remove.
  -
  -2010-08-06  Kenichi Handa  <handa@m17n.org>
  -
  -     * charset.c: Include <stdlib.h>
  -     (struct charset_sort_data): New struct.
  -     (charset_compare): New function.
  -     (Fsort_charsets): New function.
  -     (syms_of_charset): Declare Fsort_charsets as a Lisp function.
  -
  -     * coding.c (decode_coding_iso_2022): Fix checking of dimension
  -     number in CTEXT extended segment.
  -
  -2010-08-01  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * w32fns.c (syms_of_w32fns) <x-max-tooltip-size>: Fix typo in docstring.
  -     * xfns.c (syms_of_xfns) <x-max-tooltip-size>: Reflow docstring.
  -
  -2010-07-30  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * fns.c (Fsubstring_no_properties, Fnthcdr, Ffeaturep)
  -     (Fhash_table_size): Fix typos in docstrings.
  -     (Fmake_hash_table): Doc fix.
  -
  -2010-07-28  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * minibuf.c (syms_of_minibuf) <read-buffer-function>:
  -     Doc fix (bug#5625).
  -
  -2010-07-27  Ken Brown  <kbrown@cornell.edu>
  -
  -     * dired.c (DIRENTRY_NONEMPTY) [cygwin]: Use d_ino instead of
  -     the MSDOS definition.
  -
  -2010-07-25  Christoph Scholtes  <cschol2112@gmail.com>
  -
  -     * minibuf.c (Fread_buffer): Doc fix (bug#6528).
  -
  -2010-07-22  Christoph Scholtes  <cschol2112@gmail.com>
  -
  -     * window.c (Fwindow_height): Doc fix (bug#6518).
  -
  -2010-07-21  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * buffer.c (syms_of_buffer) <fringe-indicator-alist>: Doc fix.
  -
  -2010-07-17  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * gtkutil.c (xg_event_is_for_menubar): Also check that event window
  -     is related to the menu bar (Bug#6499).
  -
  -2010-07-14  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xterm.h (x_menubar_window_to_frame): Second parameter is XEvent*.
  -
  -     * xterm.c (handle_one_xevent): Pass event to x_menubar_window_to_frame.
  -
  -     * xmenu.c (x_activate_menubar): Revert previous fix for Bug#6499,
  -     i.e. don't put back ButtonRelease (Bug#6608).
  -
  -     * xfns.c (x_menubar_window_to_frame): Take XEvent as second parameter
  -     instead of Window.  Call xg_event_is_for_menubar when
  -     USE_GTK (Bug#6499).
  -
  -     * gtkutil.h (xg_event_is_for_menubar): Declare.
  -
  -     * gtkutil.c (xg_event_is_for_menubar): New function (Bug#6499).
  -
  -2010-07-14  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * w32fns.c (x_set_foreground_color): Fix setting the cursor color
  -     when it's the same as the old foreground.  (Bug#6609)
  -
  -2010-07-10  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xfaces.c (realize_face): Garbage the frame if a face is removed
  -     (Bug#6593).
  -
  -2010-07-05  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * keyboard.c: Remove duplicate <setjmp.h>.
  -     (read_key_sequence): Remove volatile qualifiers.
  -
  -2010-07-05  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * dispextern.h (FRINGE_HEIGHT_BITS): New define.
  -     (struct glyph_row): New members left_fringe_offset and
  -     right_fringe_offset.
  -
  -     * xterm.c (x_draw_fringe_bitmap): Don't clip bottom aligned bitmap
  -     specially.
  -     * w32term.c (w32_draw_fringe_bitmap): Likewise.
  -     * nsterm.m (ns_draw_fringe_bitmap): Likewise.
  -
  -     * fringe.c (draw_fringe_bitmap_1): Don't clip bitmap here.
  -     Take account of bitmap offset.
  -     (draw_window_fringes): Take account of window vscroll.
  -     (update_window_fringes): Likewise.  Extend top-aligned top indicator
  -     or bottom-aligned bottom indicator to adjacent rows if it doesn't fit
  -     in one row.  Don't set redraw_fringe_bitmaps_p outside row comparison.
  -     Set left_fringe_offset and right_fringe_offset (Bug#5634, Bug#6325).
  -
  -2010-07-04  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * w32fns.c (Qtooltip): Declare.
  -     Suggested by Andy Moreton <andrewjmoreton@gmail.com>.
  -
  -2010-07-03  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xmenu.c (x_activate_menubar): Send Press/Release for Gtk+ to avoid
  -     grab on just Press (Bug#6499).
  -
  -2010-07-02  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * frame.c (Qtooltip): New var.
  -     (delete_frame): Use it.  Fix faulty if statement.  Don't update
  -     mode line for tooltip frames.  Suggested by Martin Rudalics.
  -
  -     * xfns.c (x_create_tip_frame):
  -     * w32fns.c (x_create_tip_frame): Use it.
  -
  -2010-06-30  Naohiro Aota  <naota@elisp.net>  (tiny change)
  -
  -     * xftfont.c (xftfont_open): Check font width one by one also when
  -     spacing is dual.
  -
  -     * ftfont.c (ftfont_open): Ditto.
  -
  -2010-06-26  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * alloc.c (Fmake_byte_code): Don't access undefined argument
  -     (Bug#6517).
  -
  -2010-06-25  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (next_element_from_image): Ensure that after-strings are
  -     read the next time we hit handle_stop (Bug#1336).
  -
  -2010-06-23  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * lread.c (read1): Signal error if #s is not followed by paren.
  -
  -2010-06-19  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * image.c (free_image): Mark frame as garbaged (Bug#6426).
  -
  -     * keymap.c (Fdefine_key): Doc fix (Bug#6460).
  -
  -2010-06-15  Glenn Morris  <rgm@gnu.org>
  -
  -     * editfns.c (Fbyte_to_string): Pacify compiler.
  -
  -2010-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * dbusbind.c (xd_append_arg): Don't "make-unibyte" the string.
  -     Check `object's type before accessing its guts.
  -
  -2010-06-08  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * minibuf.c (Fall_completions): Add more checks.
  -
  -2010-06-08  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * minibuf.c (Fall_completions): Check COLLECTION's size (bug#6378).
  -
  -2010-06-03  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * process.c (conv_lisp_to_sockaddr): Fix conversion of IPv4
  -     address.  (Bug#6346)
  -
  -2010-06-03  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * ccl.c (Fccl_program_p): Fix typo in docstring.
  -
  -2010-05-31  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * keymap.c (Fwhere_is_internal): Fix handling of remapping (in thread
  -     of bug#6305).
  -
  -2010-05-27  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (redisplay_window): After redisplay, check if point is
  -     still valid before setting it (Bug#6177).
  -
  -2010-05-20  enami tsugutomo  <tsugutomo.enami@jp.sony.com>
  -
  -     * s/netbsd.h: If terminfo is found, use it in preference to
  -     termcap.  (Bug#6190)  [Backport from trunk]
  -
  -2010-05-20  Kevin Ryde  <user42@zip.com.au>
  -
  -     * keyboard.c (Vlast_command, Vkeyboard_translate_table)
  -     (Voverriding_terminal_local_map, Vsystem_key_alist)
  -     (Vlocal_function_key_map): Fix manual link in docstring (Bug#6224).
  -
  -2010-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * editfns.c (Fbyte_to_string): New function.
  -
  -2010-05-18  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * character.c (Fstring, Funibyte_string): Use SAFE_ALLOCA to
  -     prevent stack overflow if number of arguments is too large
  -     (Bug#6214).
  -
  -2010-05-11  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * makefile.w32-in ($(BLD)/w32fns.$(O)): Depend on $(SRC)/w32.h.
  -
  -     * w32fns.c: Include w32.h.
  -     (Fw32_shell_execute): Decode the error message before passing it
  -     to `error'.  (Bug#6126)
  -
  -2010-05-11  Karel Klic  <kklic@redhat.com>
  -
  -     * ftfont.c: Fix incorrect parentheses of #if condition for
  -     definining M17N_FLT_USE_NEW_FEATURE.
  -
  -2010-05-07  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * Version 23.2 released.
  -
  -2010-04-30  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * composite.c (autocmp_chars): Save point as marker before calling
  -     auto-composition-function (Bug#5984).
  -
  -     * lisp.h (restore_point_unwind): Add prototype.
  -
  -     * fileio.c (restore_point_unwind): Remove static attribute.
  -
  -2010-04-23  Kenichi Handa  <handa@m17n.org>
  -
  -     * ftfont.c (M17N_FLT_USE_NEW_FEATURE): Define it if we can use the
  -     new feature of libotf and m17n-flt.
  -     (ftfont_check_otf) [M17N_FLT_USE_NEW_FEATURE]:
  -     Call OTF_check_features even if no specific feature is given.
  -     (PACK_OTF_TAG) [M17N_FLT_USE_NEW_FEATURE]: New macro.
  -     (ftfont_drive_otf) [M17N_FLT_USE_NEW_FEATURE]: Handle the case
  -     that OUT is NULL.  Use OTF_drive_gsub_with_log and
  -     OTF_drive_gpos_with_log instead of OTF_drive_gsub and
  -     OTF_drive_gpos.
  -     (ftfont_try_otf) [M17N_FLT_USE_NEW_FEATURE]: New function.
  -     (ftfont_shape_by_flt) [M17N_FLT_USE_NEW_FEATURE]:
  -     Setup mflt_enable_new_feature and mflt_try_otf.
  -
  -2010-04-19  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * dired.c (Ffile_attributes): Fix typo in docstring.
  -
  -2010-04-13  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsmenu.m (EmacsDialog-runDialogAt:): Declare ret as
  -     NSInteger (Bug#5811).
  -
  -2010-04-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * s/darwin.h (PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF)
  -     (PTY_OPEN): New defines.  Use openpty (Bug#726, Bug#5819).
  -
  -2010-04-08  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * frame.h (FRAME_LINE_TO_PIXEL_Y): Add missing parenthesis.
  -
  -2010-04-07  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * frame.h (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Don't use
  -     FRAME_LINE_TO_PIXEL_Y.
  -
  -     * xterm.c (x_set_window_size_1): Don't add border_width/height to
  -     pixelwidth/height.
  -
  -2010-04-05  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (prepare_menu_bars): Don't call ns_set_doc_edited for
  -     terminal frames (Bug#5837).
  -
  -2010-03-31  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * nsfns.m (ns_set_doc_edited): Remove unused arg OLDVAL.
  -     * nsterm.h: Fix prototype.
  -
  -2010-03-31  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * w32fns.c (x_create_tip_frame): Copy `parms' before we modify it
  -     in this function.  (Bug#5703)
  -
  -2010-03-31  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * nsterm.h: Fix last change.
  -
  -2010-03-30  Bernhard Herzog  <bh@intevation.de>  (tiny change)
  -
  -     * menu.c (Fx_popup_menu): Use last_event_timestamp (Bug#4930).
  -
  -2010-03-30  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xdisp.c (note_mouse_highlight): Don't do highlight if pointer is
  -     invisible (Bug#5766).
  -
  -2010-03-29  Adrian Robert  <adrian.b.robert@gmail.com>
  -
  -     * xdisp.c (x_consider_frame_title, update_window_cursor): Remove
  -     HAVE_NS conditionals.
  -     (prepare_menu_bars) [HAVE_NS]: Call ns_set_doc_edited.
  -
  -     * nsfns.m (x_implicitly_set_name): If frame-title-format is t, use
  -     filename for the title.
  -     (ns_set_doc_edited): Do nothing if the selected window is a
  -     minibuffer window.
  -
  -     * nsterm.h: Add prototypes for ns_set_name_as_filename and
  -     ns_set_doc_edited.
  -
  -     * nsterm.m: Remove unneeded prototype.
  -
  -2010-03-28  Glenn Morris  <rgm@gnu.org>
  -
  -     * Makefile.in (SOME_MACHINE_OBJECTS): Ensure dbus stuff is always
  -     in the DOC file.  (Bug#5336)
  -
  -2010-03-24  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (pos_visible_p): Revert 2008-01-25 change (Bug#5730).
  -
  -2010-03-20  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * frame.c (x_get_arg): Handle RES_TYPE_BOOLEAN_NUMBER (bug #5736).
  -
  -     * xfns.c (Fx_create_frame): Make menuBar a RES_TYPE_BOOLEAN_NUMBER.
  -
  -     * dispextern.h (resource_types): RES_TYPE_BOOLEAN_NUMBER is new.
  -
  -2010-03-20  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * xfns.c (Fx_create_frame) [USE_LUCID]: Add BLOCK_INPUT around
  -     XLoadQueryFont.
  -
  -2010-03-16  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (decode_coding_ccl): Fix previous change for the
  -     multibyte case.
  -     (encode_coding_ccl): Don't setup ccl program here.  Fix for the
  -     case that the output buffer is fullfilled.
  -     (encode_coding): Setup ccl program here.
  -
  -2010-03-15  Andreas Politz  <politza@fh-trier.de>  (tiny change)
  -
  -     * editfns.c (Fformat): Account for string precision when computing
  -     field width (Bug#5710).
  -
  -2010-03-05  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     Make it possible to C-g in a tight bytecode loop again (bug#5680).
  -     * lisp.h (ELSE_PENDING_SIGNALS): New macro.
  -     (QUIT): Use it to consolidate code and remove redundancy.
  -     * bytecode.c (BYTE_CODE_QUIT): Use it as well.
  -
  -     * regex.c (regex_compile): Setup gl_state as well.
  -
  -     * syntax.c (skip_chars): Setup gl_state (bug#3823).
  -     (in_classes): Use CONSP before XCAR/XCDR.
  -
  -2010-03-03  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * keymap.c (Fwhere_is_internal): Use Fequal to compare
  -     definitions, so that keyboard macros are correctly handled
  -     (Bug#5481).
  -
  -2010-03-02  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * coding.c (decode_coding_emacs_mule): Fixup pointers to buffer
  -     text that could be relocated inside the call to emacs_mule_char.
  -     (emacs_mule_char): Use CODING_DECODE_CHAR instead of DECODE_CHAR.
  -     (CODING_DECODE_CHAR): Add a comment describing its purpose.
  -
  -2010-03-02  Kenichi Handa  <handa@m17n.org>
  -
  -     * character.c (parse_str_as_multibyte): Fix handling of the
  -     multibyte form of raw-bytes.
  -     (str_as_multibyte): Likewise.
  -
  -     * buffer.c (Fset_buffer_multibyte): Fix handling of the multibyte
  -     form of raw-bytes.
  -
  -2010-02-28  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * charset.c (load_charset_map_from_file)
  -     (load_charset_map_from_vector): Zero out allocated
  -     charset_map_entries before using them.
  -
  -2010-02-27  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * w32uniscribe.c (uniscribe_check_otf): Fix length check.
  -
  -2010-02-27  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * font.c (font_parse_fcname): Recognize "Book", "Condensed",
  -     "Medium", and "Semi-Condensed" keywords in GTK names (Bug#5646).
  -
  -2010-02-26  Kenichi Handa  <handa@m17n.org>
  -
  -     * ftfont.c (ftfont_get_open_type_spec): Fix parsing of otf_spec.
  -
  -     * xdisp.c (reseat_to_string): Fix previous change.
  -
  -2010-02-26  David Reitter  <david.reitter@gmail.com>
  -
  -     * nsfont.m (nsfont_draw): ns_antialias_text should be a
  -     Lisp_Object (Bug#4736).
  -
  -2010-02-25  Kenichi Handa  <handa@m17n.org>
  -
  -     * xdisp.c (reseat_to_string): Fix previous change (bug#5609).
  -
  -2010-02-24  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xterm.c (XTflash): Move declarations before statements.
  -
  -     * gtkutil.c (xg_get_gdk_display): Remove (unused).
  -     (xg_get_pixbuf_from_pix_and_mask, xg_create_frame_widgets)
  -     (xg_toggle_notify_cb, xg_set_toolkit_scroll_bar_thumb)
  -     (xg_create_tool_bar): Remove unused variables.
  -     (x_wm_set_size_hint): Move declarations before statements.
  -     (xg_create_frame_widgets): Remove variable grav.
  -
  -2010-02-21  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * m/arm.h: Define the LIB_GCC flag to be -lgcc_s (Bug#5518).
  -
  -2010-02-18  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * term.c (fatal): Add a final \n if needed (bug#5596).
  -
  -2010-02-18  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * nsterm.m (ns_ring_bell): Revert last change (Bug#5569).
  -
  -2010-02-18  Glenn Morris  <rgm@gnu.org>
  -
  -     * callint.c (Finteractive): Doc fix.
  -
  -2010-02-18  Kazuhiro Ito  <kzhr@d1.dion.ne.jp>  (tiny change)
  -
  -     * coding.c (record_conversion_result):
  -     Handle CODING_RESULT_INSUFFICIENT_DST.
  -     (decode_coding_object): Record CODING_RESULT_INSUFFICIENT_MEM on
  -     memory allocation error.
  -
  -2010-02-17  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (decode_coding_ccl): Don't setup ccl program here.
  -     Fix for the case that the output buffer is fullfilled.
  -     (decode_coding): Setup ccl program here.  Keep looping when the
  -     decoder stopped because the output buffer is
  -     fullfilled (bug#5534).
  -
  -     * ccl.c (ccl_driver): Never reset ic to CCL_HEADER_MAIN.
  -
  -2010-02-13  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xterm.c (x_clear_frame_area): Call gtk_widget_queue_draw if USE_GTK,
  -     bug #5571.
  -     (XTflash): Use Gdk-routines if USE_GTK so scroll bars don't get
  -     overdrawn.
  -
  -2010-02-10  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xsmfns.c (x_session_initialize): Move initialization of ice_fd and
  -     doing_interact here.
  -     (ice_connection_closed): New function.
  -     (x_session_check_input, smc_die_CB, ice_io_error_handler)
  -     (ice_conn_watch_CB, x_session_close): Call ice_connection_closed.
  -     (x_session_check_input): Call IceCloseConnection if IceProcessMessages
  -     returns I/O error.
  -     (ice_conn_watch_CB): Call add_keyboard_wait_descriptor on ice_fd,
  -     bug #5512.
  -
  -2010-02-08  Francis Devereux  <francis@devrx.org>  (tiny change)
  -
  -     * nsfont.m (nsfont_open): The system's value for the font descent
  -     is negative, so round it down to avoid clipping.
  -
  -2010-02-06  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * charset.c (load_charset_map_from_file)
  -     (load_charset_map_from_vector): Fix last change to use SAFE_ALLOCA
  -     instead of xmalloc (Bug#5526).  Suggested by Vivek Dasmohapatra.
  -
  -2010-02-05  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * charset.c (load_charset_map_from_file): Allocate large
  -     charset_map_entries structure on the heap rather than the stack.
  -     (Bug#5526).
  -
  -2010-01-31  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_parse_xlfd): If FONT is a font-entity and pixel
  -     size in NAME is invalid, return -1 (Bug#5396).
  -
  -2010-01-31  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * nsterm.m (ns_defined_color): Block input.  Suggested by Mike
  -     <deactivated@gmail.com> (Bug#3605).
  -
  -2010-01-31  David De La Harpe Golden  <david@harpegolden.net>
  -
  -     * fileio.c (Frename_file): Correctly rename symlinks to
  -     directories (Bug#5496).
  -
  -2010-01-31  Filipe Cabecinhas  <filcab@gmail.com>  (tiny change)
  -
  -     * nsterm.m (ns_ring_bell): Handle visible bell like X.
  -
  -2010-01-30  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * character.h (CHAR_PRINTABLE_P): Reparenthesize to avoid warning.
  -
  -2010-01-29  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * frame.c (DEFAULT_ROWS): Change default to 35.
  -
  -     * xfns.c (x_default_font_parameter): Change default XFT font to
  -     monospace-10 (Bug#3643).
  -
  -2010-01-29  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * w32inevt.c (key_event): Remove unnecessary comparison of
  -     event->uChar.AsciiChar with 128.
  -
  -2010-01-28  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * fileio.c (Frename_file): Fix last change (Bug#5487).
  -
  -     * m/mips.h: Remove DATA_START.  Suggested by Dan Nicolaescu.
  -
  -     * m/alpha.h: Don't define DATA_START on NetBSD (Bug#4629).
  -
  -2010-01-28  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xfns.c (Fx_create_frame): Remove window size matching code from
  -     2010-01-15.
  -     (x_get_current_desktop, x_get_desktop_workarea): Remove.
  -
  -2010-01-27  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32inevt.c (w32_kbd_patch_key): Save the unicode character.
  -     (key_event): Use unicode for characters 128 and higher (Bug#4567).
  -
  -2010-01-27  Kenichi Handa  <handa@m17n.org>
  -
  -     * regex.c (analyse_first): Fix setting of fastmap for unibyte
  -     pattern string (Bug#4209).
  -
  -2010-01-27  David De La Harpe Golden  <david@harpegolden.net>
  -
  -     * fileio.c (Frename_file): Call copy-directory and
  -     delete-directory for directories, in order to handle cross-device
  -     renaming (Bug#3353).
  -
  -2010-01-25  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xfns.c (Fx_create_frame): If frame height is too big, try
  -     sizes 24 and 10.  Bug #3643.
  -
  -2010-01-24  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     Try and fix bug#788, hopefully for real this time.
  -     * keymap.c (shadow_lookup): Add `remap' arg.
  -     (describe_map, describe_vector): Update calls to shadow_lookup.
  -     (Fwhere_is_internal): Fix up handling of `remapped_sequences' and
  -     `remapped' so this flag is applicable to `sequence'.  Be careful to
  -     perform remapping during shadow_lookup check of remapped_sequences.
  -
  -2010-01-24  Eric Bélanger  <snowmaniscool@gmail.com>  (tiny change)
  -
  -     * image.c (png_load): Use png_sig_cmp instead of the obsolete
  -     png_check_sig, which has been removed in libpng 1.4.
  -
  -2010-01-23  Giorgos Keramidas  <keramida@ceid.upatras.gr>  (tiny change)
  -
  -     * filelock.c: Include utmp.h only when HAVE_UTMP_H (FreeBSD 9.x
  -     lacks this header file).
  -
  -2010-01-23  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * xdisp.c (draw_glyphs): Update `start' for left_overwritten case
  -     as in Emacs 22.
  -
  -2010-01-22  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * lisp.h (make_pure_string): String pointer arg now points to const.
  -
  -     * alloc.c (find_string_data_in_pure, make_pure_string): String pointer
  -     args now point to const.
  -
  -2010-01-22  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * lread.c (Fload): Don't treat files without .elc extension as
  -     byte-compiled if they are ``magic'', i.e. `openp' returned -2 for
  -     them.  (bug#5303)
  -
  -2010-01-20  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (consume_chars): If ! multibyte and the encoder is ccl,
  -     treat the source as actual byte sequence.
  -
  -2010-01-19  Alan Mackenzie  <acm@muc.de>
  -
  -     Fix spurious before-change-functions invocation from (insert ?\n).
  -     * textprop.c (set_text_properties): Rename parameter
  -     `signal_after_change_p' to `coherent_change_p', and make the
  -     invocation of `modify_region' conditional on it.
  -
  -2010-01-19  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xsettings.c (apply_xft_settings): Save settings in Vxft_settings
  -     for debug purpose.
  -     (syms_of_xsettings): Declare xft-settings.
  -
  -2010-01-18  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * editfns.c (Fcurrent_time_string): Doc fix (Bug#5408).
  -
  -2010-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * xterm.c (event_handler_gdk): Block input (Bug#5037).
  -
  -2010-01-16  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * emacs.c (standard_args): Adjust arg priorities to reflect how
  -     they are processed in startup.el.
  -
  -2010-01-16  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * Makefile.in (lisp, shortlisp): Update.
  -
  -2010-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * xterm.c (x_term_init): Instead of inhibiting GC while running Lisp
  -     code, link the new kboard into all_kboard before running Lisp code,
  -     and protect the new terminal with GCPRO (Bug#5365).
  -     (x_term_init): Remove unused var `atom'.
  -     (x_delete_display, x_delete_terminal): Remove unused var `i'.
  -
  -2010-01-15  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xfns.c (x_get_current_desktop, x_get_desktop_workarea): New functions.
  -     (Fx_create_frame): Call x_get_current_desktop and x_get_desktop_workarea
  -     to find out usable size of the desktop.  Don't make frames larger than
  -     this.  Bug #3643.
  -
  -2010-01-15  Kenichi Handa  <handa@m17n.org>
  -
  -     * xdisp.c (CHAR_COMPOSED_P): New arg END_CHARPOS.  Callers changed.
  -
  -2010-01-15  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * nsterm.m (Qnone): Define.
  -
  -     * nsfns.m (Qnone): Move definition to nsterm.m.
  -
  -2010-01-14  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (detect_coding_iso_2022): Fix handling of euc-xx coding
  -     systems.
  -
  -2010-01-14  Kenichi Handa  <handa@m17n.org>
  -
  -     Make auto-composition work on all buffers even if they are
  -     fundamental mode.
  -
  -     * composite.c (Vauto_composition_mode): New variable.
  -     (composition_compute_stop_pos): Check Vauto_composition_mode
  -     instead of Vauto_composition_function.
  -     (composition_adjust_point, Ffind_composition_internal): Likewise.
  -     (syms_of_composite): Declare Lisp variable
  -     "auto-composition-mode" here.
  -
  -2010-01-13  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xterm.c (x_term_init): Avoid garbage-collecting the new terminal
  -     during call to vendor-specific-keysyms (Bug#5365).
  -
  -2010-01-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * keyboard.c (input_available_signal) [SYNC_INPUT]:
  -     Call SIGNAL_THREAD_CHECK (Bug#5333).
  -
  -     * atimer.c (alarm_signal_handler) [!SYNC_INPUT]:
  -     Call SIGNAL_THREAD_CHECK.
  -
  -2010-01-13  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     Try to fix bug#5314.  This is probably not the final word, tho.
  -     * buffer.c (Fset_buffer_modified_p): Try and be careful not to modify
  -     recent-auto-save-p as a side-effect.
  -     * buffer.h (BUF_AUTOSAVE_MODIFF): New macro.
  -     * buffer.c (Fkill_buffer, reset_buffer):
  -     * editfns.c (Fsubst_char_in_region):
  -     * fileio.c (Finsert_file_contents, Fdo_auto_save)
  -     (Fset_buffer_auto_saved, Frecent_auto_save_p): Use it.
  -
  -2010-01-13  Kenichi Handa  <handa@m17n.org>
  -
  -     Display buffer name, etc. in mode line by composing correctly.
  -
  -     * xdisp.c (reseat_to_string): Call composition_compute_stop_pos if
  -     STRING is not nil.
  -     (display_mode_element): Adjust for the change of
  -     decode_mode_spec and display_line.
  -     (decode_mode_spec): Change arg MULTIBYTE to STRING.
  -     (display_string): Handle the case that STRING is non-null and
  -     LISP_STRING is not nil.
  -
  -     * xterm.c (x_draw_composite_glyph_string_foreground):
  -     Pay attention to s->face->overstrike.
  -
  -     * composite.c (composition_reseat_it): Don't check PT if STRING is
  -     non nil.
  -
  -2010-01-12  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * keyboard.c (read_char): Don't apply previous change when current
  -     buffer is unchanged by command execution.
  -
  -2010-01-12  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * keyboard.c (read_char): Return after executing from special map.
  -
  -2010-01-12  Glenn Morris  <rgm@gnu.org>
  -
  -     * emacs.c (REPORT_EMACS_BUG_PRETEST_ADDRESS): Set it to
  -     bug-gnu-emacs rather than emacs-pretest-bug.
  -
  -2010-01-11  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * nsterm.m (syms_of_nsterm): Initialize Qcontrol etc. before
  -     initializing the Lisp variables that depend on them.
  -
  -2010-01-11  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * xfns.c (x_set_menu_bar_lines) [!USE_X_TOOLKIT && !USE_GTK]:
  -     Clear areas that will not be updated after change of menu bar lines.
  -     Clear the menu bar window's current matrix when the window gets empty.
  -
  -2010-01-09  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * intervals.h, textprop.c (extend_property_ranges): Return value
  -     and args changed.  Discard properties that begin at or after the
  -     new end (Bug#5306).
  -
  -     * editfns.c (Fformat): Caller changed.
  -
  -     * nsterm.m (ns_set_default_prefs): Delete function.
  -     (syms_of_nsterm): Initialize ns_command_modifier,
  -     ns_control_modifier, ns_function_modifier, ns_antialias_text, and
  -     ns_antialias_threshold here, not in ns_term_init (Bug#4113).
  -
  -     * xdisp.c (pos_visible_p): Check for invisible text at the correct
  -     position (Bug#4040).
  -
  -2010-01-09  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * editfns.c (Ffloat_time): Doc fix.
  -
  -2010-01-09  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xfns.c (Fx_create_frame): Don't create frame larger than display
  -     by default bug#3643.
  -
  -2010-01-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * frame.h (FRAME_TOP_MARGIN_HEIGHT): New macro.
  -     (FRAME_LINE_TO_PIXEL_Y, FRAME_PIXEL_Y_TO_LINE): Take account of pseudo
  -     windows above internal border.
  -
  -     * window.h (WINDOW_MENU_BAR_P, WINDOW_TOOL_BAR_P): New macros.
  -     (WINDOW_TOP_EDGE_Y, WINDOW_BOTTOM_EDGE_Y): Take account of pseudo
  -     windows above internal border.
  -
  -     * xdisp.c (get_glyph_string_clip_rects, init_glyph_string): Don't treat
  -     tool bar windows specially.
  -
  -     * xfns.c (x_set_tool_bar_lines): Take account of menu bar height.
  -
  -     * xterm.c (x_after_update_window_line): Don't treat tool bar windows
  -     specially.
  -     (XTflash): Take account of menu bar height.
  -
  -     * w32term.c (x_after_update_window_line): Don't treat tool bar windows
  -     specially.
  -
  -2010-01-08  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * dispnew.c (change_frame_size_1): newwidth == FRAME_COLS (f) must
  -     also be true before we can return early (bug #5339).
  -
  -2010-01-06  David Reitter  <david.reitter@gmail.com>
  -
  -     * nsfns.m (ns_get_screen): Rewrite, returning NULL for non-NS.
  -     (Fns_display_usable_bounds): Rewrite, computing bounds properly
  -     (Bug#3233).
  -
  -2010-01-06  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * font.c (font_open_entity): Enable chache and call cached_font_ok
  -     for the driver if defined.
  -     (QCuser_spec): New symbol.
  -     (font_spec_from_name): Save name as user-spec.
  -     (font_load_for_lface): Keep user-spec instead of name.
  -     (font_open_by_name): Save name as user-spec.
  -     (syms_of_font): Initialize QCuser_spec.
  -     (font_clear_prop): Clear name if it exists in font (bug#5157).
  -
  -     * xftfont.c (xftfont_open): Call xftfont_add_rendering_parameters.
  -     (xftfont_add_rendering_parameters, xftfont_cached_font_ok): New.
  -     (syms_of_xftfont): Initialize xftfont_driver.cached_font_ok.
  -
  -     * font.h (struct font_driver): Add cached_font_ok.
  -
  -     * xterm.c (x_clear_frame): Queue draw for scroll bars.
  -
  -2010-01-05  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xterm.c (x_new_font): Move code for setting rows/cols before
  -     resizing ...
  -     (x_set_window_size): ... to here.  Bug #2568.
  -
  -     * gtkutil.c (xg_clear_under_internal_border): New function.
  -     (xg_frame_resized, xg_frame_set_char_size):
  -     Call xg_clear_under_internal_border.
  -     (xg_update_scrollbar_pos): Clear under old scroll bar position.
  -
  -2010-01-05  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * keyboard.c (read_key_sequence): Catch keyboard switch after
  -     making a new tty frame (Bug#5095).
  -
  -2010-01-05  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (fontset_find_font): Fix getting the frame pointer.
  -
  -2010-01-04  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * dbusbind.c (xd_remove_watch): Avoid trying to convert a void* to
  -     Lisp_Object, preferring to convert a lisp_Object to a void* instead.
  -     (Fdbus_init_bus): Use XHASH to get a scalar value from a Lisp_Object.
  -
  -2010-01-03  Michael Albinus  <michael.albinus@gmx.de>
  -
  -     * dbusbind.c (xd_add_watch): Improve debug message.
  -     (xd_remove_watch): Improve debug message.  If DATA is the session
  -     bus, unset D-Bus session environment.
  -     (Fdbus_init_bus): Pass the bus as argument to
  -     dbus_connection_set_watch_functions.  (Bug#5283)
  -
  -2010-01-01  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * nsterm.m (ns_get_color): Fix buffer overflow (Bug#4763).
  -
  -     * lread.c (syms_of_lread): Make it clearer that these are the
  -     names of loaded files (Bug#5068).
  -
  -     * eval.c (run_hook_with_args): Handle the case where the global
  -     value has the obsolete single-function form (Bug#5026).
  -
  -2009-12-27  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * minibuf.c (Fall_completions): Minor optimization.
  -
  -2009-12-26  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * .gdbinit (pgx): Fix display of composite glyphs.
  -     Display cmp.from and cmp.to as well.
  -     (pitx): Fix last change.
  -
  -2009-12-25  Kenichi Handa  <handa@m17n.org>
  -
  -     * composite.h (composition_adjust_point): Update prototype.
  -
  -     * composite.c (composition_reseat_it): Don't make a composition
  -     spanning over point.
  -     (CHAR_COMPOSABLE_P): Treat U+200C (ZWNJ) and U+200D (ZWJ) as
  -     composable characters.
  -     (composition_adjust_point): New arg NEW_PT.  Callers changed.
  -
  -     * keyboard.c (command_loop_1): Force redisplay if the last point
  -     was within a composition.
  -     (adjust_point_for_property): Don't adjust point for automatic
  -     composition when called after buffer modification.
  -
  -2009-12-19  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * .gdbinit (pitx): Don't use enum names, use their values.
  -     Remove reference to non-existing value GET_FROM_COMPOSITION.
  -     (pgx): Don't use enum names, use their values.
  -     (pitmethod): New helper command.
  -     (pitx): Use it to display iteration method.
  -     (pgrowit): New command.
  -
  -     * makefile.w32-in ($(BLD)/cmds.$(O)): Depend on frame.h.
  -
  -     Update dependencies in Makefile.in.
  -
  -     * Makefile.in (alloc.o): Depend on termhooks.h.
  -     (atimer.o): Depend on blockinput.h.
  -     (buffer.o): Depend on indent.h, keyboard.h, coding.h, keymap.h,
  -     and frame.h.
  -     (callint.o): Depend on systime.h, coding.h, and composite.h.
  -     (callproc.o): Depend on buffer.h.
  -     (casefiddle.o): Don't depend on charset.h.
  -     (casetab.o): Depend on character.h.
  -     (ccl.o): Depend on composite.h.
  -     (chartab.o): Depend on ccl.h.
  -     (cm.o): Depend on dispextern.h.
  -     (cmds.o): Depend on systime.h, coding.h, frame.h, and composite.h.
  -     (coding.o): Don't depend on $(INTERVALS_H).
  -     (composite.o): Don't depend on dispextern.h explicitly (it's in
  -     $(INTERVALS_H)).  Depend on ccl.h.
  -     (data.o): Depend on systime.h, coding.h, composite.h,
  -     dispextern.h, font.h, and ccl.h.
  -     (dired.o): Depend on composite.h.
  -     (dispnew.o): Depend on coding.h.  Don't depend explicitly on
  -     composite.h (it's in $(INTERVALS_H)).
  -     (doc.o): Depend on systime.h, coding.h, and composite.h.
  -     (editfns.o): Don't depend explicitly on dispextern.h.
  -     (emacs.o): Depend on frame.h and coding.h.
  -     (eval.o): Depend on coding.h, composite.h, and xterm.h.
  -     (fileio.o): Depend on frame.h and commands.h.  Don't depend
  -     explicitly on dispextern.h.
  -     (filelock.o): Don't depend on epaths.h and charset.h.  Depend on
  -     composite.h.
  -     (fns.o): Don't depend on termhooks.h.
  -     (font.o): Depend on buffer.h, composite.h, fontset.h, and xterm.h.
  -     (fontset.o): Depend on blockinput.h, atimer.h, systime.h,
  -     coding.h, $(INTERVALS_H), window.h, xterm.h.
  -     (frame.o): Depend on coding.h, composite.h, termhooks.h, and ccl.h.
  -     (fringe.o): Depend on blockinput.h, atimer.h, and systime.h.
  -     (ftfont.o): Depend on blockinput.h, atimer.h, systime.h, coding.h,
  -     fontset.h, ccl.h, and ftfont.h.
  -     (ftxfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
  -     (gtkutil.o): Depend on dispextern.h and composite.h.
  -     (image.o): Depend on epaths.h, character.h, coding.h, composite.h,
  -     termhooks.h, and ccl.h.
  -     (indent.o): Depend on systime.h, coding.h, and $(INTERVALS_H).
  -     (intervals.o): Depend on systime.h and coding.h.
  -     (keyboard.o): Depend on composite.h and coding.h.
  -     (keymap.o): Depend on coding.h and frame.h.
  -     (lread.o): Depend on systime.h, frame.h, blockinput.h, and atimer.h.
  -     (macros.o): Depend on systime.h, coding.h, and composite.h.
  -     (menu.o): Depend on systime.h, coding.h, composite.h, window.h,
  -     and atimer.h.
  -     (minibuf.o): Depend on systime.h and coding.h.  Don't depend on
  -     dispextern.h explicitly.
  -     (print.o): Depend on termhooks.h, coding.h, and ccl.h.
  -     Don't depend explicitly on dispextern.h and composite.h.
  -     (process.o): Depend on character.h, xgselect.h, and sysselect.h.
  -     (regex.o): Don't depend on charset.h.
  -     (scroll.o): Depend on systime.h, coding.h, composite.h, and window.h.
  -     (search.o): Don't depend explicitly on composite.h.
  -     (sound.o): Depend on atimer.h and systime.h.
  -     (syntax.o): Don't depend explicitly on composite.h.
  -     (sysdep.o): Depend on coding.h and composite.h.
  -     (term.o): Depend on xterm.h and buffer.h.
  -     (terminal.o): Depend on dispextern.h, composite.h, and systime.h.
  -     (textprop.o): Don't depend on dispextern.h explicitly.
  -     (undo.o): Depend on dispextern.h.
  -     (window.o): Depend on coding.h and termhooks.h.  Don't depend on
  -     dispextern.h and composite.h explicitly.
  -     (xdisp.o): Depend on ccl.h.
  -     (xfaces.o): Depend on coding.h and ccl.h.
  -     (xfns.o): Depend on $(INTERVALS_H) and ccl.h.
  -     (xfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
  -     (xftfont.o): Depend on atimer.h, systime.h, fontset.h, ccl.h, and
  -     ftfont.h.
  -     (xgselect.o): New dependency.
  -     (xmenu.o): Depend on composite.h, keymap.h, and sysselect.h.
  -     (xselect.o): Depend on keyboard.h, coding.h, and composite.h.
  -     (xsettings.o): Depend on dispextern.h, keyboard.h, systime.h,
  -     coding.h, composite.h, blockinput.h, atimer.h, and termopts.h.
  -     (xsmfns.o): Depend on frame.h and dispextern.h.
  -     (xterm.o): Depend on intervals.h, keymap.h, xgselect.h, and
  -     sysselect.h.
  -
  -2009-12-19  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * font.c (Fclear_font_cache): Pass correct cache argument to
  -     font_clear_cache.
  -
  -2009-12-16  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * Makefile.in (prefix-args${EXEEXT}): Don't compile prefix-args.c
  -     twice.
  -
  -2009-12-15  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (decode_mode_spec): Inhibit garbage collection when
  -     calling file-remote-p.  Reported by Jim Meyering.
  -
  -2009-12-15  Michael Albinus  <michael.albinus@gmx.de>
  -
  -     * dbusbind.c (xd_retrieve_arg): Reorder declarations in order to
  -     avoid compiler warnings.  (Bug #5217)
  -
  -2009-12-14  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (decode_coding_iso_2022): Ignore ISO_CODE_SS2_7 (0x19)
  -     in 8-bit encoding.
  -
  -2009-12-13  Pat Thoyts  <patthoyts@users.sourceforge.net>  (tiny change)
  -
  -     * xfns.c (x_create_tip_frame): Set the extended window manager hint for
  -     tooltip windows.
  -
  -2009-12-13  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xterm.h (struct x_display_info): Add Xatom_net_window_type_tooltip and
  -     Xatom_net_window_type.
  -
  -     * xterm.c (x_term_init): Initialize Xatom_net_window_type_tooltip and
  -     Xatom_net_window_type.
  -
  -     * xterm.c (my_log_handler): New function.
  -     (x_term_init): Set my_log_handler as log handler during gtk_init
  -     so we can filter out buggy messages.  (Bug #5120).
  -
  -     * xterm.c (xg_scroll_callback): Parameter list changed,
  -     use parameter GtkScrollType to determine scroll/line/page.
  -     Only allow dragging if a button < 4 is grabbed (bug #5177).
  -     (xg_end_scroll_callback): New function.
  -     (x_create_toolkit_scroll_bar): Pass xg_end_scroll_callback to
  -     xg_create_scroll_bar.
  -
  -     * gtkutil.c (xg_gtk_scroll_destroy): Remove XG_LAST_SB_DATA handling.
  -     (scroll_end_callback): Remove.
  -     (xg_create_scroll_bar): Add parameter end_callback, bind it to
  -     button-release-event.  Replace value-changed event with change-value,
  -     bug #5177,
  -     (xg_event_is_for_scrollbar): Only return true if button is less than 4,
  -     bug #5177.
  -
  -     * gtkutil.h (XG_LAST_SB_DATA): Remove.
  -     (xg_create_scroll_bar): Add GCallback end_callback.
  -
  -     * xftfont.c (QClcdfilter): New variable.
  -     (xftfont_open): Parse constant names for RGBA, HINT_STYLE and LCDFILTER.
  -     (syms_of_xftfont): Initialize QClcdfilter.
  -
  -2009-12-12  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xsettings.c (struct xsettings): Add member seen.
  -     (parse_xft_settings): Update member seen with what we have read.
  -     Return non-zero if Xft-settings have been parsed, 0 otherwise.
  -     (apply_xft_settings): Only update Xft settings with what member seen
  -     indicates as new.
  -
  -2009-12-12  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * dispextern.h (struct text_pos): Use EMACS_INT;
  -     (struct glyph): Use EMACS_INT for charpos.
  -     (struct it): Use EMACS_INT for stop_charpos, end_charpos,
  -     region_beg_charpos, region_end_charpos,
  -     redisplay_end_trigger_charpos, and also for
  -     iterator_stack_entry.end_charpos and
  -     iterator_stack_entry.stop_charpos.
  -
  -2009-12-12  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * gtkutil.c (scroll_end_callback): New function (bug #5177).
  -     (xg_create_scroll_bar): Call scroll_end_callback on button release
  -     event (bug #5177).
  -     (xg_event_is_for_scrollbar): != replaced with ==.
  -
  -2009-12-12  Kenichi Handa  <handa@m17n.org>
  -
  -     * ftfont.c (struct ftfont_info): New member matrix.
  -     (ftfont_open): Setup xftfont_info->matrix.
  -     (MFLTFontFT): New member matrix.
  -     (FLOOR, CEIL, ROUND): New macros.
  -     (ftfont_get_metrics): Handle matrix transformation.
  -     (ftfont_shape_by_flt): New arg matrix.  Callers changed.
  -
  -     * xftfont.c (struct xftfont_info): New member matrix.
  -     (xftfont_open): Setup xftfont_info->matrix.
  -
  -2009-12-10  Kenichi Handa  <handa@m17n.org>
  -
  -     * xdisp.c (append_space_for_newline): Consider face-remapping.
  -
  -2009-12-09  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * xsettings.c: Include "keyboard.h".
  -
  -     * gtkutil.c (xg_tool_bar_proxy_help_callback): Fix missing return.
  -
  -     Fix implicit function declarations.
  -     * cmds.c: Include "frame.h".
  -     * frame.c: Include "font.h" also if !HAVE_WINDOW_SYSTEM.
  -     * frame.h: Move declaration of delete_frame outside of
  -     HAVE_WINDOW_SYSTEM.
  -
  -2009-12-09  Ken Brown  <kbrown@cornell.edu>  (tiny change)
  -
  -     * s/cygwin.h (G_SLICE_ALWAYS_MALLOC): New variable.
  -
  -     * emacs.c (main): Set the G_SLICE environment variable for Cygwin
  -     GTK builds.
  -
  -2009-12-07  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * unexelf.c (unexec): Don't search for .data twice.
  -
  -2009-12-05  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (push_display_prop): Don't set avoid_cursor_p.  Return 0
  -     if push failed.
  -     (handle_line_prefix): Set avoid_cursor_p here.  Check return value
  -     of push_display_prop (Bug#5000).
  -
  -     * xfaces.c (Fx_family_fonts): Handle 2009-07-14 change to return
  -     value of font_list_entities (Bug#5085).
  -
  -2009-12-04  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     Fix `string-to-number' to deal consistently with integers and floats.
  -     * lread.c (isfloat_string): New argument ignore_trailing to accept all
  -     trailing characters, not just whitespace.
  -     (read1): Pass new arg 0 to keep old behavior.
  -     * data.c (Fstring_to_number): Pass 1 to isfloat_string to ignore
  -     trailing chars, as it is already done for integers.  Doc fixes.
  -     * lisp.h (isfloat_string): Add new arg to declaration of isfloat_string.
  -
  -2009-12-04  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * dispextern.h (enum prop_idx) <AUTO_COMPOSED_PROP_IDX>:
  -     Delete unused enumeration value.
  -
  -2009-12-03  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * Makefile.in (lisp, shortlisp): Replace indian.el with indian.elc.
  -
  -2009-12-03  Daniel Hackney  <dan@haxney.org>  (tiny change)
  -
  -     * process.c (Fmake_network_process): Fix up the tests for
  -     "connectionless socket", so they DTRT for seqpacket sockets as well.
  -
  -2009-12-03  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * process.c (Qseqpacket): New symbol.
  -     (HAVE_SEQPACKET): New macro.
  -     (Fmake_network_process): Accept new :type `seqpacket'.
  -     (init_process): Add `seqpacket' feature when applicable.
  -     (syms_of_process): Initialize Qseqpacket.
  -
  -2009-12-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * font.c (font_load_for_lface, font_open_by_name): Don't store name
  -     if entity is Qnil.
  -
  -2009-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * print.c (print_preprocess): Preprocess the key_and_value table of
  -     hashtables, even tho they're "hidden" (bug#5082).
  -
  -2009-11-29  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * frame.c (frame_make_pointer_invisible)
  -     (frame_make_pointer_visible): Declare f before statements.
  -
  -2009-11-28  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * Makefile.in [!AUTO_DEPEND]: Remove outdated comment about
  -     omitted dependencies on lisp.h.
  -
  -2009-11-27  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xftfont.c (xftfont_end_for_frame): Just return if dpyinfo->display
  -     is NULL.
  -
  -     * xterm.c (x_delete_terminal): Set dpyinfo->display to NULL.
  -
  -     * frame.c (frame_make_pointer_invisible)
  -     (frame_make_pointer_visible): Just return if there isn't any selected
  -     frame.
  -
  -     * search.c (simple_search): Remove warning by making *p const.
  -
  -2009-11-26  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * xdisp.c (power_letter): Remove duplicate const.
  -
  -2009-11-25  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * term.c (delete_tty): Remove check for last terminal (bug#4970).
  -
  -     * xsettings.c: Revert changes from 2009-11-23.  Just use Xft
  -     defaults (bug #5025).
  -
  -2009-11-24  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * insdel.c (adjust_markers_for_delete): Move it in the
  -     right direction!  (bug#4803)
  -
  -2009-11-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * font.c (font_open_entity): Don't use ASET if font_object is Qnil.
  -
  -     * xterm.c (x_new_font): Update f->scroll_bar_actual_width.
  -
  -2009-11-24  Glenn Morris  <rgm@gnu.org>
  -
  -     * frame.c (focus-follows-mouse): Mention mouse-autoselect-window.
  -
  -2009-11-23  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * Makefile.in: Must create deps for ecrt0.o in its rule.
  -
  -     * xfns.c (Fx_select_font): Try to convert Fontconfig name to Gtk name
  -     because that is what Gtk+ font dialog understands.
  -
  -     * font.c (font_make_object, Fcopy_font_spec): Use Fcopy_alist instead
  -     of Fcopy_sequence.
  -     (font_open_by_name): Put name given into QCname for font-object returned.
  -
  -     * frame.c (x_set_font): Save original font name as frame parameter
  -     font-parameter.
  -
  -     * xsettings.c (set_default_xft_settings): New function.
  -     (init_xfd_settings): Call set_default_xft_settings if no XSETTINGS window
  -     is found.
  -
  -2009-11-22  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * search.c (simple_search): Avoid CHAR_TO_BYTE in inner loop when
  -     searching backwards through multibyte buffer.
  -
  -2009-11-21  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xterm.c: #include xgselect.h.
  -     (x_initialize): Call xgselect_initialize.
  -
  -     * xsettings.c (something_changedCB): C++ comments => C comments.
  -     (init_gconf): Do not deal with any GLib file descriptors, xg_select
  -     does that now.
  -
  -     * gtkutil.c (xg_timer, xg_process_timeouts, xg_start_timer)
  -     (xg_stop_timer, menu_grab_callback_cnt, menu_grab_callback)
  -     (scroll_bar_button_cb): Remove.
  -     (create_menus): C++ comments => C comments.  Don't bind grab-notify
  -     event.
  -     (xg_create_scroll_bar): Don't bind button-press-event and
  -     button-release-event.
  -
  -     * process.c: Include xgselect.h if defined (USE_GTK) ||
  -     defined (HAVE_GCONF).
  -     (wait_reading_process_output): Call xg_select for the same condition.
  -
  -     * xgselect.c (xg_select): New function to better integrate with
  -     GLib/Gtk event handling.  Needed if GConf daemon dies/restarts.
  -
  -     * xgselect.h: New file, declare xg_select, xgselect_initialize.
  -
  -     * Makefile.in (XOBJ): Add xgselect.o.
  -
  -2009-11-21  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * character.h (STRING_CHAR, STRING_CHAR_AND_LENGTH):
  -     Remove ignored second argument.  All callers changed.
  -     * regex.c (STRING_CHAR, STRING_CHAR_AND_LENGTH, RE_STRING_CHAR)
  -     (RE_STRING_CHAR_AND_LENGTH): Likewise.
  -     * xdisp.c (string_char_and_length): Likewise.
  -
  -2009-11-21  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * xterm.c (x_new_font):
  -     * print.c (print_object):
  -     * cmds.c (Fself_insert_command): Move declarations before statements.
  -
  -2009-11-20  Ken Brown  <kbrown@cornell.edu>  (tiny change)
  -
  -     * s/cygwin.h: Remove unneeded linker flags.
  -
  -2009-11-20  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xfns.c (x_default_font_parameter): Call xsettings_get_system_font.
  -
  -     * xsettings.h: Declare xsettings_get_system_font.
  -
  -     * xsettings.c (xsettings_get_system_font): New function.
  -     (init_gconf): No use initiating gconf unless we have Xft also.
  -     (syms_of_xsettings): Only provide system-font-setting if HAVE_XFT and
  -     HAVE_GCONF.
  -
  -     * gtkutil.c (xg_modify_menubar_widgets): If menubar is totally empty
  -     add a blank entry so it doesn't collapse into nothing.
  -
  -2009-11-19  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * lread.c (Funintern): Comment out last change.
  -
  -2009-11-19  Richard Stallman  <rms@gnu.org>
  -
  -     * lread.c (Funintern): Error if symbol is t or nil.
  -
  -2009-11-19  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * insdel.c (make_gap_larger): Don't make as many assumptions about the
  -     representation of Lisp integers.
  -     Reported by MJ Chan <mjchan.inbox@gmail.com>.
  -
  -2009-11-17  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * lisp.h: Remove declaration of Ffont_get_system_font.
  -     * xfns.c: Move include of "xsettings.h".
  -     * xsettings.h: Use EXFUN to declare Ffont_get_system_font.
  -
  -2009-11-17  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xsettings.c (something_changedCB, Ffont_get_system_font):
  -     Check use_system_font.
  -     (syms_of_xsettings): DEFVAR font-use-system-font.
  -
  -2009-11-17  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * xfns.c (x_default_font_parameter): Remove dead assignment.
  -
  -     * lisp.h (Fbyteorder, init_font, Ffont_get_system_font): Declare.
  -
  -2009-11-17  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xftfont.c (xftfont_fix_match): Older versions of fontconfig do
  -     not have FC_LCD_*.  #define them if not there.
  -
  -     * xsettings.c (parse_xft_settings, apply_xft_settings): Ditto.
  -
  -     * xterm.h (struct x_display_info): Add atoms and Window for xsettings.
  -
  -     * xterm.c (handle_one_xevent): Call xft_settings_event for
  -     ClientMessage, PropertyNotify and DestroyNotify.
  -     (x_term_init): If we have XFT, get DPI from Xft.dpi.
  -     Call xsettings_initialize.
  -
  -     * xftfont.c (xftfont_fix_match): New function.
  -     (xftfont_open): Call XftDefaultSubstitute before XftFontMatch.
  -     Call xftfont_fix_match after XftFontMatch.
  -
  -     * xfont.c (xfont_driver): Initialize all members.
  -
  -     * xfns.c (x_default_font_parameter):
  -     Try font from Ffont_get_system_font.
  -     Do not get font from x_default_parameter if we got one from
  -     Ffont_get_system_font.
  -     (Fx_select_font): Get the defaut font name from :name of FRAME_FONT(f).
  -
  -     * w32font.c (w32font_driver): Initialize all members.
  -
  -     * termhooks.h (enum event_kind): CONFIG_CHANGED_EVENT is new.
  -
  -     * lisp.h: Declare syms_of_xsettings.
  -
  -     * keyboard.c (kbd_buffer_get_event, make_lispy_event):
  -     Handle CONFIG_CHANGED_EVENT.
  -
  -     * ftfont.c (ftfont_filter_properties): New function.
  -
  -     * frame.c (x_set_font): Remove unused variable lval.
  -
  -     * font.h (struct font_driver): Add filter_properties.
  -
  -     * font.c (font_put_extra): Don't return if val is nil, it means
  -     boolean option is off.
  -     (font_parse_fcname): Collect all extra properties in extra_props
  -     and call filter_properties for all drivers with extra_props and
  -     font as parameter.
  -     (font_open_entity): Do not use cache, it does not pick up new
  -     fontconfig settings like hinting.
  -     (font_load_for_lface): If spec had a name in it, store it in entity.
  -
  -     * emacs.c (main): Call syms_of_xsettings.
  -
  -     * config.in: HAVE_GCONF is new.
  -
  -     * Makefile.in (GCONF_CFLAGS, GCONF_LIBS): New variables for HAVE_GCONF.
  -     xsettings.o is new.
  -
  -2009-11-17  Kenichi Handa  <handa@m17n.org>
  -
  -     * xdisp.c (x_produce_glyphs): Consider face-remapping when falling
  -     back to the default font in case that no suitable font is found.
  -
  -2009-11-17  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * menu.c (Fx_popup_menu) [HAVE_NS]: Use generic code for window edge.
  -     Suggested by Chad Brown <yandros@mit.edu>.
  -     (push_menu_item): Use MENU_ITEMS_ITEM_* names.
  -
  -2009-11-16  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xmenu.c (x_menu_wait_for_event): Call XFlush before select.
  -
  -2009-11-14  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * Makefile.in: Ignore errors from mkdir when creating deps directory.
  -
  -2009-11-14  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * gtkutil.c (xg_update_frame_menubar): Do nothing if menubar already
  -     has a parent.
  -
  -     * Makefile.in: If AUTO_DEPEND is defined, make gcc generate
  -     dependency files in deps/.  Include those files into Makefile.
  -
  -     * config.in: Generated (AUTO_DEPEND).
  -
  -2009-11-13  Michael Albinus  <michael.albinus@gmx.de>
  -
  -     * dbusbind.c (Vdbus_registered_objects_table): Rename from
  -     Vdbus_registered_functions_table, because it contains also
  -     properties.  Fix docstring.
  -     (Fdbus_call_method, Fdbus_call_method_asynchronously): Fix docstring.
  -
  -2009-11-13  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * alloc.c (mark_object): Don't reprocess marked strings.
  -     Check vector's markbit earlier.  Adjust calls to mark_vectorlike.
  -     (mark_vectorlike, mark_char_table): Assume the object is unmarked.
  -
  -2009-11-13  Kenichi Handa  <handa@m17n.org>
  -
  -     * category.c (word_boundary_p): Adjust for the change of the
  -     semantics of Vword_combining_categories.
  -     (Vword_combining_categories): Describe the slight change of the
  -     semantics.
  -
  -2009-11-13  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * menu.c (Fx_popup_menu): Call Fx_hide_tip only if HAVE_WINDOW_SYSTEM.
  -
  -     * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Revert last change.
  -
  -2009-11-12  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * xdisp.c (syms_of_xdisp): Fix typo in last change.
  -
  -2009-11-12  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * makefile.w32-in: Update dependencies; add dependencies to lisp.h.
  -
  -2009-11-11  David Reitter  <david.reitter@gmail.com>
  -
  -     * menu.c (Fx_popup_menu): Remove left-over debugging code and rename
  -     variables to fix 2009-11-09 change.
  -
  -2009-11-11  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * process.c (ifflag_def): Make flag_sym constant.
  -     (Fnetwork_interface_info): Use a constant pointer.
  -     (ifflag_table):
  -     * xfns.c (cursor_bits):
  -     * xdisp.c (power_letter):
  -     * termcap.c (speeds, esctab):
  -     * sysdep.c (baud_convert):
  -     * keyboard.c (lispy_accent_codes, modifier_names):
  -     * image.c (xbm_format, xpm_format, pbm_format, png_format)
  -     (jpeg_format, tiff_format, gif_format, svg_format)
  -     (interlace_start, interlace_increment, gs_format):
  -     * gtkutil.c (separator_names):
  -     * fringe.c (swap_nibble):
  -     * fns.c (base64_value_to_char, base64_char_to_value):
  -     * fileio.c (make_temp_name_tbl):
  -     * coding.c (suffixes): Make constant.
  -
  -     * frame.c (make_initial_frame):
  -     * buffer.c (init_buffer_once): Use make_pure_c_string instead of
  -     build_string.
  -     * alloc.c (syms_of_alloc): Build Vmemory_signal_data in pure memory.
  -
  -     * s/freebsd.h:
  -     * s/netbsd.h: Remove code referring to non-existent file: unexsunos4.o.
  -
  -     * Makefile.in: Add dependencies to lisp.h.  Remove dependencies
  -     for non-existent files: unexmips.c, unexnext.c, abbrev.c, malloc.c.
  -
  -     * xfns.c (syms_of_xfns): Use make_pure_string instead of build_string.
  -     * xterm.c (syms_of_xterm):
  -     * xfaces.c (syms_of_xfaces):
  -     * xdisp.c (syms_of_xdisp):
  -     * lread.c (syms_of_lread):
  -     * keyboard.c (syms_of_keyboard): Use make_pure_c_string instead of
  -     build_string.
  -
  -     * doc.c (Fsnarf_documentation): Purecopy Vbuild_files.
  -
  -2009-11-10  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * fns.c (Fplist_get): Merge the active and the commented out code.
  -
  -2009-11-10  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * keyboard.h: Declare timer_check.
  -
  -     * keyboard.c (timer_check_2): New function that does what the old
  -     timer_check did.
  -     (timer_check): Call timer_check_2 until -1 or a non-zero time is
  -     returned, i.e. don't return -1 with timers pending.
  -
  -     * process.c: Remove extern declaration of timer_check.
  -
  -     * xmenu.c (x_menu_wait_for_event): Remove code that did a timeout
  -     even if timer_check returned -1.
  -
  -     * gtkutil.c (xg_dialog_response_cb): Data is now a struct
  -     xg_dialog_data.
  -     (pop_down_dialog): Destroy widget (if any), cancel timer and unref
  -     the event loop.
  -     (xg_maybe_add_timer, xg_dialog_run): New functions (bug #4574).
  -     (xg_get_file_name, xg_get_font_name): Call xg_dialog_run (bug #4574).
  -     Destroy the dialog after xg_dialog_run.
  -
  -2009-11-10  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * menu.c (Fx_popup_menu) [HAVE_NS]: Remove unused vars.
  -
  -2009-11-10  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xmenu.c (xmenu_show): Must not be static after 2009-11-09 changes.
  -
  -2009-11-09  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * menu.c [HAVE_NTGUI]: Declare current_popup_menu.
  -
  -2009-11-09  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
  -     w32menu.c, and nsmenu.m.
  -     Simplify the obsolete case where position is nil.
  -     (cleanup_popup_menu): New function, moved from nsmenu.m.
  -     (struct skp): Remove slot `notreal'.
  -     (single_keymap_panes, keymap_panes): Remove arg `notreal' and
  -     adjust callers.
  -     (single_menu_item): Adjust call to parse_menu_item.
  -     (syms_of_menu): Defsubr x-popup-menu.
  -     * menu.h (Vmenu_updating_frame): Consolidate declarations from *menu.c.
  -     (keymap_panes): Don't export any more.
  -     (mouse_position_for_popup, w32_menu_show, ns_menu_show)
  -     (xmenu_show): Declare.
  -     * keyboard.c (parse_menu_item): Remove arg `notreal'.
  -     (menu_bar_item, read_char_minibuf_menu_prompt): Adjust callers.
  -     * keyboard.h (parse_menu_item): Update declaration.
  -     * xmenu.c (Fx_popup_menu): Remove.
  -     (syms_of_xmenu): Don't defsubr x-popup-menu.
  -     * w32menu.c (Fx_popup_menu): Remove.
  -     (syms_of_w32menu): Don't defsubr x-popup-menu.
  -     * nsmenu.m (cleanup_popup_menu): Remove.
  -     (ns_menu_show): Rename from ns_popup_menu and remove all the code
  -     moved to menu.c's Fx_popup_menu.
  -     (Fx_popup_menu): Remove.
  -     (syms_of_nsmenu): Don't defsubr x-popup-menu, and don't initialize
  -     menu_items (it's done in menu.c already).
  -
  -2009-11-08  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * keyboard.c (parse_menu_item): Handle `notreal' a bit earlier.
  -     Use `tem' less.  Make sure KEYEQ holds a string or nil (bug#4879).
  -
  -2009-11-08  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xmenu.c (Fx_popup_menu): Extract event timestamp.  Pass it to
  -     xmenu_show.  Hide any tooltip before opening a menu.
  -     (xmenu_show): New arg.  Pass it to create_and_show_popup_menu.
  -     (create_and_show_popup_menu): New arg.  Pass it to gtk_menu_popup.
  -
  -2009-11-06  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     Let integers use up 2 tags to give them one extra bit and thus double
  -     their range.
  -     * lisp.h (USE_2_TAGS_FOR_INTS): New macro.
  -     (LISP_INT_TAG, case_Lisp_Int, LISP_STRING_TAG, LISP_INT_TAG_P):
  -     New macros.
  -     (enum Lisp_Type): Use them.  Give explicit values.
  -     (Lisp_Type_Limit): Remove.
  -     (XINT, XUINT, make_number) [!USE_LISP_UNION_TYPE]:
  -     (MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM, INTMASK):
  -     Pay attention to USE_2_TAGS_FOR_INTS.
  -     (INTEGERP): Use LISP_INT_TAG_P.
  -     * fns.c (internal_equal): Simplify the default case.
  -     (sxhash): Use case_Lisp_Int.
  -     * data.c (wrong_type_argument): Don't check against Lisp_Type_Limit
  -     any more.
  -     (Ftype_of): Use case_Lisp_Int.
  -     (store_symval_forwarding): Take into account the fact that Ints can
  -     now have more than one tag.
  -     * buffer.c (syms_of_buffer): Use LISP_INT_TAG.
  -     buffer_slot_type_mismatch):
  -     * xfaces.c (face_attr_equal_p):
  -     * print.c (print_object):
  -     * alloc.c (mark_maybe_object, mark_object, survives_gc_p):
  -     Use case_Lisp_Int.
  -
  -2009-11-06  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce by further 30K.
  -
  -     * alloc.c (make_pure_c_string): Fix last change to avoid compiler
  -     warning.
  -
  -2009-11-06  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * gtkutil.c (xg_event_is_for_scrollbar): New function (bug#4870).
  -
  -     * gtkutil.h: Declare xg_event_is_for_scrollbar (bug#4870).
  -
  -     * xterm.c (handle_one_xevent): Call xg_event_is_for_scrollbar for
  -     ButtonPressRelease and MotionNotify (bug#4870).
  -
  -2009-11-06  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * keymap.c (syms_of_keymap): Construct exclude_keys in pure memory.
  -
  -     * xterm.c (syms_of_xterm):
  -     * xselect.c (syms_of_xselect):
  -     * xmenu.c (syms_of_xmenu):
  -     * xfns.c (syms_of_xfns):
  -     * xfaces.c (syms_of_xfaces):
  -     * xdisp.c (syms_of_xdisp):
  -     * window.c (syms_of_window):
  -     * w32fns.c (syms_of_w32fns):
  -     * undo.c (syms_of_undo):
  -     * textprop.c (syms_of_textprop):
  -     * terminal.c (syms_of_terminal):
  -     * syntax.c (syms_of_syntax):
  -     * sound.c (syms_of_sound):
  -     * search.c (syms_of_search):
  -     * print.c (syms_of_print):
  -     * minibuf.c (syms_of_minibuf):
  -     * macros.c (syms_of_macros):
  -     * keymap.c (syms_of_keymap, initial_define_key)
  -     (initial_define_lispy_key):
  -     * keyboard.c (syms_of_keyboard):
  -     * insdel.c (syms_of_insdel):
  -     * image.c (syms_of_image):
  -     * fringe.c (syms_of_fringe):
  -     * frame.c (syms_of_frame):
  -     * fontset.c (syms_of_fontset):
  -     * fns.c (syms_of_fns):
  -     * fns.c (syms_of_fns):
  -     * fileio.c (syms_of_fileio):
  -     * fileio.c (syms_of_fileio):
  -     * eval.c (syms_of_eval):
  -     * doc.c (syms_of_doc):
  -     * dispnew.c (syms_of_display):
  -     * dired.c (syms_of_dired):
  -     * dbusbind.c (syms_of_dbusbind):
  -     * data.c (syms_of_data):
  -     * composite.c (syms_of_composite):
  -     * coding.c (syms_of_coding):
  -     * cmds.c (syms_of_cmds):
  -     * charset.c (define_charset_internal, syms_of_character):
  -     * ccl.c (syms_of_ccl):
  -     * category.c (syms_of_category, init_category_once):
  -     * casetab.c (syms_of_casetab):
  -     * casefiddle.c (syms_of_casefiddle):
  -     * callint.c (syms_of_callint):
  -     * bytecode.c (syms_of_bytecode):
  -     * buffer.c (keys_of_buffer, syms_of_buffer):
  -     * alloc.c (syms_of_alloc):
  -     * process.c (syms_of_process, init_process):
  -     * lread.c (syms_of_lread, init_obarray):
  -     * font.c (build_style_table):
  -     * emacs.c (syms_of_emacs, main): Replace calls to intern with
  -     intern_c_string, calls to make_pure_string with
  -     make_pure_c_string.  Use pure_cons instead of Fcons.
  -
  -     * process.c (socket_options): Make it const.
  -     (set_socket_option, init_process): Use a const pointer.
  -
  -     * lread.c (intern_c_string): New function.
  -     (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
  -     (defvar_int): Uset it.  Make the name const char*.
  -
  -     * lisp.h (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
  -     (defvar_int): Update prototypes.
  -     (DEFUN, EXFUN): Support for prototypes is now required.
  -     (intern_c_string): New prototype.
  -     (struct Lisp_Subr): Make symbol_name constant.
  -
  -     * font.c (struct table_entry): Remove unused member.  Make NAMES
  -     constant.
  -     (weight_table, slant_table, width_table): Make constant.
  -
  -     * emacs.c (struct standard_args): Make name and longname constant.
  -
  -     * character.h (DEFSYM): Use intern_c_string.
  -
  -2009-11-06  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * alloc.c (make_pure_c_string): New function.
  -
  -     * eval.c (Fautoload): Purecopy all arguments.
  -
  -2009-11-05  Kenichi Handa  <handa@m17n.org>
  -
  -     * fileio.c (Finsert_file_contents): Be sure set coding-system of
  -     the buffer in case of replace.
  -
  -2009-11-04  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * puresize.h (BASE_PURESIZE): Increase to 1620000.
  -
  -2009-11-03  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * editfns.c (save_restriction_restore): Update the (pt/begv/vz)_markers
  -     when applicable (bug#4851).
  -
  -     * lisp.h: Make USE_LSB_TAG work with USE_LISP_UNION_TYPE.
  -     (P_): Support for prototypes is now required.
  -
  -2009-10-31  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * frame.c (Fmake_frame_invisible, Fframe_visible_p): Doc fix
  -     (Bug#4827).
  -
  -2009-10-30  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Redefine to waste less pure space.
  -
  -2009-10-30  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * puresize.h (BASE_PURESIZE): Increase to 1470000.
  -
  -     * lread.c (Fload): Purecopy the file name when building
  -     Vpreloaded_file_list.
  -
  -2009-10-29  Jason Rumney  <jasonr@wanchan.jasonrumney.net>
  -
  -     * w32fns.c (syms_of_w32fns): Change default value of
  -     w32-scroll-lock-modifier to nil.  (Bug#2827)
  -
  -2009-10-26  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * minibuf.c (Fall_completions): Fix typos in docstring.
  -
  -2009-10-26  Andreas Schwab  <schwab@redhat.com>
  -
  -     * puresize.h (PURESIZE_RATIO): Increase back to 10/6.
  -
  -2009-10-26  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * window.c (grow_mini_window): Comment out "delta >= 0" assertion.
  -     For delta < 0, skip check that only makes sense when the mini-window
  -     is going to be enlarged.  (Bug#4534)
  -
  -2009-10-25  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * keyboard.c (read_char_x_menu_prompt): Don't demand a prompt
  -     string in menu maps (Bug#4471).
  -
  -2009-10-24  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * nsfns.m (ns_set_name, ns_set_name_as_filename): Don't call
  -     FRAME_NS_VIEW on terminal frames (Bug#4765).
  -
  -2009-10-24  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_INTnn and
  -     DBUS_TYPE_UINTnn separately to get proper sign extension.
  -
  -     * dired.c (Ffile_attributes): Simplify now that FIXNUM_OVERFLOW_P
  -     can properly handle unsigned types.
  -     (make_uid, make_gid): Remove.
  -
  -     * lisp.h (FIXNUM_OVERFLOW_P): Fix last change to handle unsigned
  -     types again.
  -
  -     * sysdep.c (procfs_ttyname): Fix sprintf format to match argument type.
  -     (system_process_attributes): Likewise.
  -
  -2009-10-24  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * keymap.c (Fmake_sparse_keymap): Purecopy the name.
  -
  -     * eval.c (Fautoload): Purecopy the filename.  Simplify.
  -
  -     * category.c (Fdefine_category): Purecopy docstring.
  -
  -2009-10-23  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * lisp.h (FIXNUM_OVERFLOW_P): Remove cast to avoid overflow.
  -
  -     * puresize.h (PURESIZE_RATIO): Decrease to 11/7.
  -
  -2009-10-23  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * window.c (Fwindow_edges, Fwindow_pixel_edges)
  -     (Fwindow_inside_edges, Fwindow_inside_pixel_edges): Doc fix
  -     (Bug#4775).
  -
  -2009-10-23  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * fileio.c (syms_of_fileio): Initialize Vdirectory_sep_char.
  -     (init_fileio_once):
  -     * lisp.h (init_fileio_once): Remove.
  -     * emacs.c (main): Don't call init_fileio_once.
  -
  -2009-10-23  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * puresize.h (BASE_PURESIZE): Increase to 1430000.
  -
  -2009-10-21  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * doprnt.c (doprnt): Fix overflow check.
  -
  -2009-10-21  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xterm.c (x_term_init): Remove XSynchronize call done for debugging.
  -
  -     * xterm.h (x_wait_for_event): Declare it.
  -
  -     * xterm.c (pending_event_wait): New variable.
  -     (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
  -     see pending_event_wait.eventtype.
  -     (handle_one_xevent): Don't change gravity when parent changes.
  -     (x_new_font): Call change_frame_size with new rows/columns before we
  -     try to resize the frame.
  -     (x_wait_for_event): New function.
  -     (x_set_window_size_1): Don't change gravity unless change_gravity
  -     is set.
  -     Call XResizeWindow with FRAME_OUTER_WINDOW.  If we are visible,
  -     don't change frame size, instead wait for the ConfigureNotify.
  -     (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
  -     (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
  -     (x_initialize): Initialize pending_event_wait.
  -
  -     * xmenu.c (set_frame_menubar): Add internal border width to menu bar
  -     size.
  -
  -     * widget.c (EmacsFrameSetValues): Add comment.
  -     (EmacsFrameSetCharSize): Just call x_set_window_size.
  -
  -     * gtkutil.c (xg_frame_set_char_size): Flush events and call
  -     x_wait_for_event.
  -     (flush_and_sync): Remove again.
  -     (xg_get_font_name): Suggest monospace if no previous font is known.
  -
  -2009-10-20  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * character.c (char_resolve_modifier_mask): Don't resolve meta to the
  -     8th bit, since that only made sense in the ASCII world (bug#4751).
  -
  -2009-10-20  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * xterm.c (XTread_socket) [!USE_GTK && HAVE_X_I18N]: Don't quit
  -     processing pending events when event is filtered for input method.
  -     (Bug#3681)
  -
  -2009-10-20  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * fns.c: Add #endif accidentally removed in previous change.
  -
  -2009-10-19  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * fns.c: Remove code for unsupported system: MAC_OS.
  -     * image.c: Likewise.  Include setjmp.h.
  -
  -2009-10-19  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xterm.c (x_create_toolkit_scroll_bar): Don't allocate color for
  -     pixel -1 (bug #4742).
  -
  -2009-10-19  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * process.c (create_pty): Remove conditionals for no longer
  -     supported systems: UNIPLUS and RTU.
  -
  -     * xterm.c:
  -     * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
  -
  -     * alloc.c: Do not define struct catchtag.
  -     * eval.c: Move struct catchtag definition ...
  -     * lisp.h: ... here.
  -
  -     * image.c: Move png.h #include earlier to avoid warnings.
  -
  -     * xterm.c:
  -     * xsmfns.c:
  -     * xselect.c:
  -     * xrdb.c:
  -     * xmenu.c:
  -     * xftfont.c:
  -     * xfont.c:
  -     * xfns.c:
  -     * xfaces.c:
  -     * xdisp.c:
  -     * window.c:
  -     * widget.c:
  -     * w32xfns.c:
  -     * w32uniscribe.c:
  -     * w32term.c:
  -     * w32select.c:
  -     * w32reg.c:
  -     * w32proc.c:
  -     * w32menu.c:
  -     * w32inevt.c:
  -     * w32heap.c:
  -     * w32font.c:
  -     * w32fns.c:
  -     * w32console.c:
  -     * w32.c:
  -     * w16select.c:
  -     * vm-limit.c:
  -     * unexsol.c:
  -     * unexec.c:
  -     * unexcw.c:
  -     * unexaix.c:
  -     * undo.c:
  -     * tparam.c:
  -     * textprop.c:
  -     * terminfo.c:
  -     * terminal.c:
  -     * termcap.c:
  -     * term.c:
  -     * syntax.c:
  -     * sound.c:
  -     * sheap.c:
  -     * search.c:
  -     * scroll.c:
  -     * region-cache.c:
  -     * regex.c:
  -     * ralloc.c:
  -     * process.c:
  -     * print.c:
  -     * nsterm.m:
  -     * nsselect.m:
  -     * nsmenu.m:
  -     * nsimage.m:
  -     * nsfont.m:
  -     * nsfns.m:
  -     * msdos.c:
  -     * minibuf.c:
  -     * menu.c:
  -     * marker.c:
  -     * macros.c:
  -     * keymap.c:
  -     * keyboard.c:
  -     * intervals.c:
  -     * insdel.c:
  -     * indent.c:
  -     * gtkutil.c:
  -     * ftxfont.c:
  -     * ftfont.c:
  -     * fringe.c:
  -     * frame.c:
  -     * fontset.c:
  -     * font.c:
  -     * fns.c:
  -     * floatfns.c:
  -     * filelock.c:
  -     * fileio.c:
  -     * emacs.c:
  -     * editfns.c:
  -     * dosfns.c:
  -     * doprnt.c:
  -     * doc.c:
  -     * dispnew.c:
  -     * dired.c:
  -     * dbusbind.c:
  -     * data.c:
  -     * composite.c:
  -     * coding.c:
  -     * cmds.c:
  -     * cm.c:
  -     * chartab.c:
  -     * charset.c:
  -     * character.c:
  -     * ccl.c:
  -     * category.c:
  -     * casetab.c:
  -     * casefiddle.c:
  -     * callproc.c:
  -     * callint.c:
  -     * bytecode.c:
  -     * buffer.c:
  -     * atimer.c: Include setjmp.h.  (Bug#4643)
  -
  -2009-10-18  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     Remove leftover table unibyte_to_multibyte_table.
  -     * character.c (unibyte_to_multibyte_table): Remove.
  -     (Funibyte_char_to_multibyte): Use MAKE_CHAR_MULTIBYTE.
  -     * charset.c (init_charset_once): Don't init unibyte_to_multibyte_table.
  -     * character.h (UNIBYTE_TO_CHAR): New macro.
  -     (MAKE_CHAR_MULTIBYTE): Use it.
  -     (unibyte_to_multibyte_table, unibyte_char_to_multibyte): Remove.
  -     * xdisp.c (get_next_display_element): USE ASCII_CHAR_P.
  -     (message_dolog, set_message_1):
  -     * search.c (Freplace_match):
  -     * editfns.c (Fcompare_buffer_substrings):
  -     * fns.c (Fcompare_strings): Use MAKE_CHAR_MULTIBYTE.
  -     (concat):
  -     * insdel.c (copy_text, count_size_as_multibyte):
  -     Use ASCII_CHAR_P and BYTE8_TO_CHAR.
  -     * term.c (produce_glyphs):
  -     * syntax.c (skip_chars): Use BYTE8_TO_CHAR.
  -     * regex.c (RE_CHAR_TO_MULTIBYTE):
  -     * cmds.c (internal_self_insert):
  -     * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use UNIBYTE_TO_CHAR.
  -
  -     * cmds.c (internal_self_insert): `c' is already in "multibyte" form.
  -
  -2009-10-17  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * puresize.h (BASE_PURESIZE): Increase to 1310000.
  -
  -2009-10-16  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * buffer.c (Fbuffer_name): Doc fix.  (Bug#4728)
  -
  -2009-10-15  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsterm.h (NS_HAVE_NSINTEGER): Back out and augment with CGFloat,
  -     still needed under Tiger.
  -
  -     * nsterm.m (EmacsView-conversationIdentifier): Arg is long.
  -
  -     * m/amdx86-64.h: Don't set LIB_STANDARD and START_FILES under
  -     __Apple__.
  -
  -     * m/intel386.h: Remove DARWIN_OS/_LP64 special case.
  -
  -2009-10-15  Kenichi Handa  <handa@m17n.org>
  -
  -     * print.c (print_object): Escape a symbol like "2E10" too.
  -
  -2009-10-11  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     Cleanups and changes for 64-bit compile under Snow Leopard.
  -     Based on suggestions by Erik Charlebois.
  -
  -     * nsfns.m (xw-color-values): Use CGFloat where appropriate.
  -
  -     * nsfont.m (ns_char_width): Replace deprecated call.
  -     (ns_findfonts, nsfont_list_family): Use long format in printf, and
  -     cast argument.
  -     (nsfont_open): Use ns_char_width() everywhere.
  -     (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where appropriate.
  -
  -     * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
  -
  -     * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
  -     where appropriate.
  -
  -     * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
  -     where appropriate.
  -     (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:):
  -     Use stringWithUTF8String.
  -     (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
  -
  -     * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip):
  -     Add formal protocol mention to inheritance.
  -     [NS_HAVE_NSINTEGER]: Drop conditional and contents.
  -
  -     * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate.
  -     Fix printf format.
  -     (ns_query_color): Use CGFloat where appropriate.
  -     (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
  -     (EmacsScroller-mouseDown:): Use long format in printf, and cast
  -     argument.
  -
  -     * config.in (NS_HAVE_NSINTEGER): Drop.
  -
  -     * dbusbind.c (dbus-method-return-internal)
  -     (dbus-method-error-internal): Use long format in printf, and cast
  -     argument.
  -
  -     * font.c (font_unparse_xlfd, font_unparse_fcname): Use long format
  -     in printf, and cast argument.
  -
  -     * process.c (list_processes_1): Use long format in printf, and
  -     cast argument.
  -
  -2009-10-11  Glenn Morris  <rgm@gnu.org>
  -
  -     * frame.c (Fframe_pixel_height): Doc fix.  (Bug#4535)
  -
  -2009-10-08  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
  -     menu bar with a small width so it doesn't enlarge the frame.
  -
  -2009-10-08  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * fontset.c (Fset_fontset_font): Fix typos in error messages.
  -
  -2009-10-06  Glenn Morris  <rgm@gnu.org>
  -
  -     * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
  -     SOME_MACHINE_LISP (this enters indirectly via DOC).
  -
  -2009-10-05  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * dired.c (Ffile_attributes): Doc fix.  (Bug#4638)
  -
  -2009-10-04  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
  -     Doc fix.
  -
  -2009-10-03  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * window.c (Fdelete_window): Check WINDOW argument.  (Bug#4618)
  -
  -2009-10-02  Michael Albinus  <michael.albinus@gmx.de>
  -
  -     * lisp.h (Qdelete_directory_internal): Remove, because it is not
  -     used anymore outside fileio.c.
  -
  -     * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
  -
  -2009-10-01  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * lisp.h (Qdelete_directory_internal):
  -     Declare, instead of Qdelete_directory.
  -
  -     * w32fns.c (Fsystem_move_file_to_trash): Use it.
  -
  -2009-10-01  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * eval.c (Fcalled_interactively_p): Add `kind' argument.
  -
  -2009-10-01  Michael Albinus  <michael.albinus@gmx.de>
  -
  -     * fileio.c (Fdelete_directory_internal): Rename from
  -     Fdelete_directory.  It is not a command anymore.  It has no file
  -     name handler.
  -
  -2009-09-28  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * xdisp.c (get_next_display_element): Use an enum in last change.
  -
  -2009-09-28  Kenichi Handa  <handa@m17n.org>
  -
  -     * xdisp.c (get_next_display_element): Pay attention to
  -     unibyte_display_via_language_environment in handling
  -     Vnobreak_char_display.
  -
  -2009-09-27  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsterm.h (ns_app_name): New extern variable.
  -
  -     * nsterm.m (ns_app_name): New variable.
  -     (ns_term_init): Set and use it.
  -     (ns_term_shutdown): Use it.
  -
  -     * nsmenu.m (ns_update_menubar): Use ns_app_name.  Sync with xmenu.c.
  -     (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
  -
  -     * nsfns.m (ns_set_name_iconic, ns_set_name)
  -     (ns_set_name_as_filename, x-create-frame, ns-get-resource)
  -     (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
  -
  -     * menu.c (find_and_return_menu_selection) [HAVE_NS]:
  -     Remove double-casting in client_data comparison.
  -
  -2009-09-27  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * keyboard.c (make_lispy_event): Remember last wheel direction.
  -     (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
  -
  -2009-09-26  Glenn Morris  <rgm@gnu.org>
  -
  -     * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
  -     internal.elc.  Add term/pc-win.elc.
  -     (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
  -     term/x-win.elc.
  -     (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
  -     term/w32-win.elc.
  -     (NS_SUPPORT): New.
  -     (lisp): Add NS_SUPPORT.
  -     (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
  -
  -2009-09-25  David Reitter  <david.reitter@gmail.com>
  -
  -     * nsmenu.m (EmacsMenu-clear): Recognize application menu
  -     on Mac OS X 10.6+ (bug#4513).
  -
  -2009-09-24  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * frame.c (xrdb_get_resource): Return nil for empty string resources;
  -     some parts of Emacs code (like font selection) don't grok them.
  -     See http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
  -
  -2009-09-24  Andreas Schwab  <schwab@redhat.com>
  -
  -     * coding.c (decode_coding_iso_2022): Fix operator precedence.
  -
  -2009-09-24  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * dired.c (Fdirectory_files): Fix typo in docstring.
  -
  -2009-09-23  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsterm.m (EV_TIMESTAMP, x_set_window_size)
  -     (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
  -     (EmacsScroller-setPosition:portion:whole:): Remove -display call
  -     under GNUstep.
  -     (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
  -
  -     * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
  -     glyph advancement.
  -
  -2009-09-22  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
  -     (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
  -
  -     * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
  -     deleted (bug #4492).
  -
  -     * nsfont.m (Vns_reg_to_script): New lisp variable.
  -     (syms_of_nsfont): Declare it.
  -     (ns_registry_to_script): New function.
  -     (ns_get_req_script): Call it.
  -     (ns_findfonts): Don't give up on non-unicode registry.
  -
  -     * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
  -
  -2009-09-20  Tom Tromey  <tromey@redhat.com>
  -
  -     * eval.c (find_handler_clause): Make stack-trace-on-error work in
  -     batch mode (bug#4228).
  -
  -2009-09-18  Rob Christie  <robchristie@gmail.com>  (tiny change)
  -
  -     * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
  -     carefully.  (Bug #4339)
  -
  -2009-09-18  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
  -
  -2009-09-18  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * emacs.c (inhibit_x_resources): Update doc string for NS.
  -     (main) [HAVE_NS]: Don't process --no-init-file option.  Remove
  -     legacy code for -NXHost.  Fix error printf in daemon case.
  -
  -     * nsterm.h (ns_no_defaults): Remove.
  -
  -     * nsterm.m (ns_no_defaults): Remove.
  -     (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
  -     (ns_use_qd_smoothing): Remove legacy variable.
  -     (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
  -     don't update the NSWindow itself.
  -     (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
  -     state detection and store user rect ourselves.  (Bug #3581)
  -
  -     * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
  -     ns_use_qd_smoothing.
  -
  -     * nsfns.m (x_get_string_resource): Ape just-previous changes to other
  -     platform versions.  Drop support for emacs-20-style face specs.
  -     (x-close-connection): Drop PSFlush() under OS X.
  -     (x-focus-frame): Activate the app first.  (Bug #4180)
  -
  -2009-09-17  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * emacs.c (inhibit_x_resources): New variable.
  -     (main) [HAVE_NS]: Don't process --quick command line option.
  -     (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
  -
  -     * lisp.h (inhibit_x_resources): Declare it extern.
  -
  -     * w32reg.c (x_get_string_resource):
  -     * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
  -
  -2009-09-17  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP):
  -     Add lisp/term/internal.elc.
  -
  -2009-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * frame.c (x_get_resource_string): Re-add for non-toolkit builds
  -     (bug#4461).
  -
  -2009-09-17  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * puresize.h (BASE_PURESIZE): Increase to 1290000.
  -
  -     * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
  -     (OBJECTS_MACHINE): Remove, unused.
  -
  -2009-09-16  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * frame.c (x_get_resource_string): Remove unused.
  -
  -2009-09-15  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xterm.c (x_new_font): Call change_frame_size before calling
  -     x_set_window_size, in case frame size won't change.
  -
  -     * frame.c (x_set_font): Remove dead code.
  -
  -2009-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * lread.c (Fload): Also run do-after-load-evaluation while dumping.
  -
  -2009-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * lread.c (Fload): Don't output a message after loading an obsolete
  -     package any more (done in Lisp now).
  -
  -2009-09-12  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * fns.c (syms_of_fns): Doc fix (Bug#4227).
  -
  -2009-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * keymap.c (Fwhere_is_internal): Use nconc2.
  -
  -2009-09-11  Alan Mackenzie  <acm@muc.de>
  -
  -     * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
  -     batch mode.
  -
  -2009-09-11  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * xdisp.c (display_mode_element): Detect cycles.
  -
  -2009-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * keymap.c (where_is_internal): Don't erroneously return nil right after
  -     filling the cache.
  -     (where_is_internal_1): Fix up typo.
  -
  -2009-09-11  Glenn Morris  <rgm@gnu.org>
  -
  -     * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
  -     share a common doc-string.
  -
  -2009-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * keymap.c (get_keymap): Return the actual keymap symbol rather than
  -     t for autoloaded keymaps when autoloading is not allowed (bug#4393).
  -
  -     * keymap.c (QCadvertised_binding): New constant.
  -     (syms_of_keymap): Initialize it.
  -     (Fwhere_is_internal): Try and use bindings from :advertised-binding
  -     if applicable.
  -
  -2009-09-10  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
  -     (parse_menu_item): Streamline since bindings are recomputed all the
  -     time anyway.  Don't bother checking Vdefine_key_rebound_commands any
  -     more and don't support lmenu's menu-alias any more either.
  -
  -     * keymap.c (where_is_internal_data): Make noindirect a boolean.
  -     (where_is_internal): Strip it down to only traverse the keymaps.
  -     Move the cache handling from Fwhere_is_internal to here.
  -     (Fwhere_is_internal): Move the handling of remapping and the choice of
  -     the best binding from where_is_internal to here.
  -     Unify the cached/noncached paths, so remapping is also handled
  -     correctly when the cache is used, and so the cache can be used to
  -     speed up remap-handling when applicable.
  -     Give preference to non-remapped bindings.
  -     * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
  -     non-remapped bindings.
  -     * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
  -     command remapping.
  -
  -     * xdisp.c (display_mode_element): Move list length limit from 50 to
  -     5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
  -
  -2009-09-09  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsfont.m (ns_get_family): Don't force first letter to uppercase.
  -
  -2009-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * xdisp.c (Vtruncate_partial_width_windows): Improve docstring.
  -     (Bug#4334)
  -
  -     * keymap.c (where_is_internal): Filter out shadowed remappings.
  -     Assume that where_is_internal returns unshadowed bindings to simplify
  -     the code and get rid of the gotos.  Use ASIZE.
  -
  -2009-09-04  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xterm.c (x_focus_changed): If we get a focusout and pointer
  -     is invisible, make it visible.
  -
  -     * xterm.h: Remove condition for declaration of
  -     x_*_window_to_frame.
  -
  -2009-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * dispnew.c (Fsend_string_to_terminal): Make it work again on the
  -     initial terminal as well.
  -
  -2009-09-02  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xterm.h: Rename x_non_menubar_window_to_frame to
  -     x_menubar_window_to_frame.
  -
  -     * xterm.c: Remove declarations also in xterm.h
  -     (XTmouse_position): Do not return valid positions
  -     for clicks in the menubar and the toolbar for Gtk+.
  -
  -     * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
  -     if the widget for the event has the same top level as a frame,
  -     return the frame.
  -     (x_menubar_window_to_frame): Detect menu bar even with Gtk+
  -     internal windows, bug #4122.
  -     (x_non_menubar_window_to_frame): Remove.
  -
  -2009-09-02  Glenn Morris  <rgm@gnu.org>
  -
  -     * buffer.c (default-major-mode): Move most of the doc from here...
  -     (major-mode): ... to here.
  -
  -2009-08-30  Nick Roberts  <nickrob@snap.net.nz>
  -
  -     * process.c (wait_reading_process_output): Keep the descriptor
  -     when pty is used by a non-child process, e.g., in I/O buffer of
  -     GDB this allows inferior to be restarted.
  -
  -2009-08-29  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * xdisp.c (redisplay_internal): Remove redundant test and collapse
  -     both branches into one.
  -
  -2009-08-29  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
  -     (main): Use enable-multibyte-characters rather than
  -     default-enable-multibyte-characters.  Output a warning message when
  -     running a unibyte session.
  -
  -2009-08-28  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
  -     LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
  -     (copy_data_segment): Also copy __program_vars section.
  -     (copy_dyld_info) [LC_DYLD_INFO]: New function.
  -     (dump_it) [LC_DYLD_INFO]: Use it.
  -
  -     * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
  -
  -2009-08-28  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
  -     $(SRC)/buildobj.h.
  -     (buildobj.h): Renamed from $(SRC)/buildobj.h.
  -     (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
  -     $(SRC)/buildobj.h.
  -     (clean): Add buildobj.h.
  -
  -2009-08-28  Teodor Zlatanov  <tzz@lifelogs.com>
  -
  -     * print.c (print_object): Set escapeflag to 1 when printing
  -     hashtable keys and values.
  -
  -2009-08-27  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * lread.c (read_integer): Use doubles (and potentially return a float
  -     number) as we do in string-to-number.
  -     (read1): Use strtol to read integers, signal errors on strtol's
  -     overflow and use floats if strtol's output is too large for
  -     Elisp integers.
  -
  -2009-08-27  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
  -     (make-buildobj-SH): Fix last change.
  -     (SRC): Move to before where it's first used.
  -
  -2009-08-27  Kenichi Handa  <handa@m17n.org>
  -
  -     * process.c (send_process): Use encode_coding_object instead of
  -     encode_coding_string to perform eol-conversion even if the string
  -     is unibyte.
  -
  -     * coding.c (encode_coding_utf_16): Fix checking of a Unicode
  -     character.
  -
  -     * cmds.c (Fself_insert_command): Avoid unnecessay
  -     unibyte->multibyte conversion.  (Bug#4240)  (Bug#4037)
  -
  -2009-08-26  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * callproc.c (Fcall_process): Remove always true #if.
  -
  -     * lisp.h: Replace #if 0 code for checking with text pointing to
  -     the --enable-checking configure flag.
  -
  -     * emacs.c (main): Mention the --enable-profiling configure flag
  -     instead of using CFLAGS.
  -
  -2009-08-26  Ken Raeburn  <raeburn@raeburn.org>
  -
  -     * Makefile.in (buildobj.h): New target.
  -     (doc.o): Depend on it.
  -     (temacs${EXEEXT}): Don't generate buildobj.lst.
  -     (mostlyclean): Delete buildobj.h, not buildobj.lst.
  -     * makefile.w32-in ($(SRC)/buildobj.h): New target.
  -     ($(BLD)/doc.$(O)): Depend on it.
  -     (make-buildobj-CMD, make-buildobj-SH): New targets.  (Syntax help
  -     provided by Eli Zaretskii.)
  -     ($(TEMACS)): Don't generate buildobj.lst.
  -     * doc.c: Include buildobj.h.
  -     (buildobj): New static variable.
  -     (Fsnarf_documentation): Use it, instead of opening and reading
  -     buildobj.lst.
  -
  -2009-08-25  Michael Albinus  <michael.albinus@gmx.de>
  -
  -     * dbusbind.c (Fdbus_call_method)
  -     (Fdbus_call_method_asynchronously): Use English numeric format for
  -     timeout values in doc string.
  -
  -2009-08-25  Kenichi Handa  <handa@m17n.org>
  -
  -     * alloc.c (mark_char_table): New function.
  -     (mark_object): Use mark_char_table for a char-table.
  -
  -     * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
  -     (CHAR_TABLE_REF): Use it.
  -
  -2009-08-23  Ken Raeburn  <raeburn@raeburn.org>
  -
  -     * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
  -     before invoking the newly build emacs to check for load-path
  -     shadowing.
  -
  -2009-08-22  Glenn Morris  <rgm@gnu.org>
  -
  -     * Makefile.in (bootstrap_exe): New variable.
  -     (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
  -     Use ${bootstrap_exe}.
  -
  -2009-08-22  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * coding.h (encode_coding_string): Don't encode unibyte strings.
  -     (Bug#4047)
  -
  -2009-08-22  Michael Albinus  <michael.albinus@gmx.de>
  -
  -     * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
  -
  -     * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove.  It was
  -     intended as hotfix only.
  -     (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
  -
  -2009-08-21  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsterm.m (ns_get_color): Update documentation properly for last
  -     change, and clean up loose ends in the code left by it.  Fix
  -     longstanding bug with 16-bit hex parsing, and add support for
  -     yet another X11 format (rgb:r/g/b) for compatibility.
  -     * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
  -     timer_check() to avoid crash on Leopard/PPC.  Bug #2154.
  -
  -2009-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
  -
  -2009-08-20  Michael Albinus  <michael.albinus@gmx.de>
  -
  -     * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
  -     (xd_add_watch, xd_remove_watch): Use it.  Print debug messages.
  -     (xd_initialize, xd_pending_messages): Check, whether
  -     $DBUS_SESSION_BUS_ADDRESS is set.
  -
  -2009-08-20  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * nsfns.m (Fxw_color_values): Return 3-element list.  Doc fix.
  -
  -     * nsterm.m (ns_get_color): Remove incompatible color formats again.
  -
  -2009-08-20  Glenn Morris  <rgm@gnu.org>
  -
  -     * emacs.c (system-type): Doc fix.
  -
  -2009-08-19  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
  -     enough for the most common situations.  Avoid SET_SYMBOL_VALUE.
  -
  -2009-08-18  Michael Albinus  <michael.albinus@gmx.de>
  -
  -     * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
  -     New functions.
  -     (xd_initialize): Revert change from 2009-08-16.
  -
  -2009-08-18  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (Ffontset_font): If a nil element is found in a
  -     font-group vector, return nil.
  -
  -2009-08-17  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * process.c (status_notify): Don't perform redisplay.
  -     (Fdelete_process, list_processes_1, process_send_signal):
  -     Expliticly perform redisplay.
  -     (wait_reading_process_output): Always check process status, but
  -     don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
  -
  -2009-08-17  Ken Raeburn  <raeburn@raeburn.org>
  -
  -     * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
  -     (XFLOAT_INIT): New macro for storing a float value.
  -     * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
  -     * fns.c (sxhash): Copy out the value of a float in order to
  -     examine its bytes.
  -     * dbusbind.c (xd_append_arg): Likewise.
  -
  -     * emacs.c (main): Don't call syms_of_data twice.
  -
  -2009-08-16  Michael Albinus  <michael.albinus@gmx.de>
  -
  -     * dbusbind.c (xd_initialize): Add connection file descriptor to
  -     input_wait_mask, in order to let select() detect, whether a new
  -     message has been arrived.
  -     (Fdbus_call_method_asynchronously): Allow nil HANDLER.
  -
  -2009-08-15  Michael Albinus  <michael.albinus@gmx.de>
  -
  -     * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
  -     New functions.
  -
  -     * lisp.h (xd_pending_messages): Declare.
  -
  -     * keyboard.c (readable_events): Call xd_pending_messages.
  -
  -2009-08-15  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
  -
  -     * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
  -
  -     * buffer.c (set_buffer_internal_1)
  -     (swap_out_buffer_local_variables): Check for unbound local
  -     variables (Bug#4138).
  -
  -2009-08-14  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * process.c (create_pty): Fix last change.
  -
  -2009-08-13  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
  -     (xbm_load_image): Caller changed.
  -     (xbm_file_p): Avoid signalling an image_error (Bug#4107).
  -
  -2009-08-13  Nick Roberts  <nickrob@snap.net.nz>
  -
  -     * process.c (create_pty): New function.
  -     (Fstart_process): Use it to allow Emacs to just associate a pty
  -     with the buffer.  See associated change in gdb-mi.el.
  -     (list_processes_1): Deal with no program name.
  -     (start_process_unwind): Use pid == -2 to mean no process.
  -
  -2009-08-12  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * cmds.c (nonundocount): New global variable.
  -     (keys_of_cmds): Initialize it.
  -     (Fself_insert_command): Use it to combine upto 20 sequential chars
  -     into a single undo entry, just like the Qself_insert_command code in
  -     keyboard.c does.
  -     Call frame_make_pointer_invisible, also like the Qself_insert_command
  -     code in keyboard.c does.
  -     * keyboard.c (command_loop_1): Use the new global nonundocount rather
  -     than its own local replacement for it.
  -
  -2009-08-10  Ken Raeburn  <raeburn@raeburn.org>
  -
  -     * fns.c (concat): Don't re-set string length to its current value.
  -
  -     * coding.h (decode_coding_string, encode_coding_string):
  -     Use SBYTES macro.
  -
  -     * doprnt.c (doprnt_lisp): Delete unused function.
  -     (doprnt): Merge with doprnt1, discarding lispstrings code.
  -     * lisp.h (doprnt_lisp): Don't declare.
  -
  -2009-08-07  Juri Linkov  <juri@jurta.org>
  -
  -     * puresize.h (BASE_PURESIZE): Increase to 1270000.
  -
  -2009-08-07  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * print.c (syms_of_print): Undo previous change.
  -
  -2009-08-05  Teodor Zlatanov  <tzz@lifelogs.com>
  -
  -     * lread.c (read1, syms_of_lread): Read hashtables back from the
  -     readable format.
  -
  -     * print.c (print_preprocess, print_object): Print hashtables fully
  -     and readably.
  -     (syms_of_print): Provide 'hashtable-print-readable.
  -
  -2009-08-02  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
  -     no family set.
  -     (nsfont_open): Handle case when entity has no family.
  -
  -2009-07-29  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
  -     element, not a list, for match case.
  -
  -2009-07-28  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
  -     rigidly.
  -
  -     * xfont.c (xfont_list_pattern): Don't ignore the return value of
  -     font_parse_xlfd.  Check font properties more rigidly.
  -
  -2009-07-27  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
  -     bsd-common.h.
  -
  -2009-07-27  Kenichi Handa  <handa@m17n.org>
  -
  -     * xfaces.c (face_with_height): Call font_clear_prop.
  -
  -2009-07-26  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * dispnew.c (init_display): Use Qx, Qw32, and Qns.
  -
  -     * xterm.c (x_term_init): Use Qx.
  -
  -     * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
  -
  -     * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
  -     (ns_get_color): Revert 2009-07-16 change.
  -
  -2009-07-25  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * lread.c (syms_of_lread) <force_load_messages>: New variable.
  -     (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
  -
  -2009-07-25  Ken Raeburn  <raeburn@raeburn.org>
  -
  -     * coding.h (decode_coding_string, encode_coding_string):
  -     Use SCHARS macro.
  -
  -     * lread.c: Rewrite 2009-07-21 changes.
  -     (load_depth): Delete.
  -     (Qload_in_progress): New variable.
  -     (load_unwind): Don't reference load_depth or load_in_progress.
  -     (Fload): Likewise; specbind Qload_in_progress instead.
  -     (init_lread): Don't initialize load_depth.
  -     (syms_of_lread): Initialize and protect Qload_in_progress.
  -
  -2009-07-24  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsfont.m (ns_findfonts): Correctly return fallback in match case.
  -
  -2009-07-23  Yavor Doganov  <yavor@gnu.org>
  -
  -     * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
  -
  -2009-07-23  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
  -     Bugs 3792, 3720, 2402.
  -     (ns_lookup_indexed_color): Check for bad index.
  -     (ns_index_color): Init unused slot to 0.
  -     (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
  -     Bug 3714, possibly 3082.
  -
  -2009-07-22  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
  -     Position IME window at cursor (Bug#2570).
  -     (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
  -     (globals_of_w32fns): Dynamically load functions required above.
  -
  -     * w32term.c (w32_draw_window_cursor): Send message to reposition
  -     any IME window.
  -
  -2009-07-21  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * fileio.c: Revert 2009-07-16 changes.
  -     (Vauto_save_include_big_deletions): New variable.
  -     (Fdo_auto_save): Disable auto-save only if
  -     auto-save-include-big-deletions is nil.
  -
  -2009-07-21  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (move_it_to): For continued lines ending in a tab, take
  -     the overflowed pixels into account (Bug#3879).
  -
  -2009-07-21  Ken Raeburn  <raeburn@raeburn.org>
  -
  -     * lread.c (load_depth): New variable.
  -     (Fload, load_unwind, init_lread): Set it to the load recursion
  -     depth; set load_in_progress as a simple boolean based on the
  -     current load_depth.  (Bug#3892)
  -
  -2009-07-20  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsfont.m (ns_has_attribute): Remove.
  -     (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
  -
  -2009-07-18  Juri Linkov  <juri@jurta.org>
  -
  -     * process.c (Fset_process_query_on_exit_flag): Mention killing
  -     a buffer in docstring.
  -
  -2009-07-17  Kenichi Handa  <handa@m17n.org>
  -
  -     * casetab.c (shuffle): Fix the logic of setting up the cycle.
  -
  -2009-07-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * nsfns.m (Fns_set_alpha): Remove function.
  -     (syms_of_nsfns): Don't defsubr it.
  -
  -     * nsterm.m (ns_get_color): Remove incompatible color formats.
  -     (ns_color_to_lisp): Generate #rrggbb color format string.
  -
  -2009-07-16  Richard Stallman  <rms@gnu.org>
  -
  -     * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
  -     (Fset_buffer_auto_saved): Handle save_length = -2.
  -
  -2009-07-16  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xterm.c (Qx_gtk_map_stock): New var.
  -
  -     * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
  -     of calling intern each time.
  -
  -2009-07-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * nsfont.m (nsfont_draw): Remove code for stippling, which actually
  -     does tiling.
  -
  -     * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
  -
  -2009-07-14  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_vconcat_entity_vectors): New function.
  -     (struct font_sort_data): New member font_driver_preference.
  -     (font_compare): Check font_driver_preference.
  -     (font_sort_entities): The format of the first argument changed.
  -     (font_delete_unmatched): Likewise.
  -     (font_list_entities): The return type changed.
  -     (font_select_entity): The format of the second argument changed.
  -     (font_find_for_lface): Adjuste for the above changes.
  -     Don't suppress the checking of C even if the repertory supports it.
  -     (Flist_fonts): Adjust for the above changes.
  -
  -     * ftfont.c (ftfont_spec_pattern): New arg langname.  Change caller.
  -     (ftfont_list): Adjust for the change of ftfont_spec_pattern.
  -     Reject a font who has adstyle property that is different from a
  -     langname derived from registry property.
  -     (ftfont_match): Adjust for the change of ftfont_spec_pattern.
  -
  -2009-07-13  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
  -     local copy of dirfilename.
  -
  -2009-07-13  Kenichi Handa  <handa@m17n.org>
  -
  -     * chartab.c (sub_char_table_ref_and_range): Fix the range check
  -     against max_char.
  -
  -     * cmds.c (internal_self_insert): Check sym by SYMBOLP before
  -     calling XSYMBOL (sym).
  -
  -2009-07-11  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
  -     New function.
  -     (directory_files_internal) [WINDOWSNT]:
  -     Bind w32-get-true-file-attributes to either t or nil, depending whether
  -     the filesystem of the directory is fast or slow.
  -
  -     * w32.c (logon_network_drive): Don't assume PATH is an absolute
  -     file name.
  -     (is_slow_fs): New function.
  -     (stat): Use it to determine whether to issue more system calls to
  -     get accurate file attributes, when w32-get-true-file-attributes is
  -     `local'.
  -
  -2009-07-10  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xfns.c (Fx_select_font): Remember last font selected in
  -     x_last_font_name and use that the next time.  Also try the frame
  -     parameter font-parameter as default to the font dialog.
  -
  -2009-07-10  Kenichi Handa  <handa@m17n.org>
  -
  -     * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
  -
  -2009-07-09  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
  -
  -     * w32.c (stat): Treat UNC file names as residing on remote
  -     drives.  (Bug#3542)
  -
  -2009-07-09  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (fontset_find_font): Fix previous change.
  -
  -2009-07-08  Michael Albinus  <michael.albinus@gmx.de>
  -
  -     * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
  -     (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
  -     error flag.
  -
  -2009-07-08  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (fontset_find_font): Fix the logic of handling
  -     charset_matched.
  -     (font_for_char): Delete unused var.
  -     (generate_ascii_font_name): Delete it.
  -
  -     * coding.h (JIS_TO_SJIS2): Fix the code range check.
  -
  -     * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
  -     (encode_coding_sjis): Fix the code range check.
  -
  -2009-07-07  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
  -     (Fexpand_file_name): Copy string data properly (Bug#3772).
  -
  -2009-07-07  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
  -     first MapNotify.
  -
  -2009-07-07  Kenichi Handa  <handa@m17n.org>
  -
  -     * character.h (unibyte_has_multibyte_table): Delete extern.
  -     (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
  -
  -     * charset.c (Fset_charset_priority): Update charset_unibyte.
  -     (syms_of_charset): Initialize charset_unibyte.
  -
  -     * character.c (unibyte_has_multibyte_table): Delete it.
  -     (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
  -     charset_unibyte.
  -     (multibyte_char_to_unibyte_safe): Likewise.
  -     (Funibyte_char_to_multibyte): Don't check charset_unibyte.
  -
  -     * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
  -     (x_produce_glyphs): Likewise.
  -
  -     * .gdbinit (xcharset): Fix the treating $arg0.
  -
  -2009-07-04  Eli Zaretskii  <eliz@gnu.org>
  -
  -     Emulation of `getloadavg' on MS-Windows.
  -     * w32.c: Include float.h
  -     (g_b_init_get_native_system_info, g_b_init_get_system_times)
  -     (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
  -     (get_native_system_info, get_system_times): New functions.
  -     (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
  -     (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
  -     (globals_of_w32): Initialize g_b_init_get_native_system_info,
  -     g_b_init_get_system_times, and num_of_processors.
  -
  -2009-07-03  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32term.c (w32_initialize): Use standard types.
  -
  -2009-07-03  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * dired.c (Ffile_attributes): Decode user and group names by the
  -     locale's encoding.  (Bug#3443)
  -
  -2009-07-03  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
  -     (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
  -
  -     * callproc.c (child_setup): Use #else instead of a separate #ifdef.
  -
  -     * term.c (init_tty): Remove spurious #ifdef.
  -
  -     * m/mips.h: Mention this file is also used for netbsd.
  -     * m/pmax.h: Remove file.
  -
  -2009-07-03  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xterm.h (struct x_display_info): Add invisible_cursor.
  -     (struct x_output): Add current_cursor.
  -
  -     * xterm.c (XTtoggle_invisible_pointer): New function.
  -     (x_define_frame_cursor): Don't define cursor if invisible or the
  -     same as before.  Set current_cursor.
  -     (x_create_terminal): Set toggle_invisible_pointer_hook.
  -
  -     * xfns.c (make_invisible_cursor): New function.
  -     (x_set_mouse_color): Call make_invisible_cursor.
  -     Set current_cursor.
  -     (x_window): Set current_cursor.
  -
  -     * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
  -
  -     * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
  -     inserting a character.
  -     (read_avail_input): Call frame_make_pointer_visible.
  -
  -     * frame.c (Vmake_pointer_invisible): New variable.
  -     (frame_make_pointer_invisible, frame_make_pointer_visible):
  -     New functions.
  -     (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
  -
  -     * frame.h: Declare frame_make_pointer_invisible and
  -     frame_make_pointer_visible.
  -     (struct frame): Add pointer_invisible.
  -
  -2009-07-02  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
  -     frame isn't visible.
  -     (xg_frame_resized): If width/height is -1, get size of window
  -     from X server.
  -
  -     * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
  -     for MapNotify.
  -
  -     * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
  -     here or call change_frame_size.  Just call flush_and_sync.
  -     (flush_and_sync): Reintroduce.
  -
  -2009-07-01  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
  -
  -     * xterm.c (x_handle_net_wm_state): Also look for sticky.
  -     (x_term_init): Initialize Xatom_net_wm_state_sticky.
  -
  -     * frame.h: Declare Qsticky.
  -
  -     * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
  -
  -     * nsfns.m (ns_frame_parm_handlers): Ditto.
  -
  -     * frame.c: Declare Qsticky.
  -     (frame_parms): Add sticky.
  -
  -     * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
  -
  -     * xterm.h: Declare x_set_sticky.
  -
  -     * xterm.c (x_set_sticky): New function.
  -
  -     * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
  -     (xg_tool_bar_menu_proxy): Attach enter/leave events to
  -     xg_tool_bar_proxy_help_callback.
  -
  -     * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
  -
  -     * frame.c: Qmaximized is new.
  -     (x_set_frame_parameters): Do not handle fullscreen specially.
  -     Only set width and height if explicitly set.
  -     (x_set_fullscreen): Handle Qmaximized.
  -     (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
  -     (syms_of_frame): Initialize Qmaximized.
  -
  -     * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
  -     Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
  -
  -     * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
  -     for Expose event.  Add call to x_check_fullscreen for MapNotify event.
  -     Remove all code w.r.t. fullscreen from ConfigureNotify event.  Do not
  -     set gravity to NorthWestGravity when USE_GTK.
  -     (set_wm_state): New function.
  -     (do_ewmh_fullscreen): Use set_wm_state.  Also handle FULLSCREEN_MAXIMIZED.
  -     (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
  -     (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
  -     or the case when no window manager is running.  That means remove calls
  -     to x_real_positions and x_fullscreen_adjust.
  -
  -     * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
  -     (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
  -     flush_and_sync.
  -     (xg_height_changed): New function.
  -     (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
  -     and gtk_window_set_policy.  Set frame gravity after parsing the
  -     geometry string.
  -     (xg_update_frame_menubar, free_frame_menubar)
  -     (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
  -     (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
  -     Remove calls to xg_frame_set_char_size.
  -
  -2009-07-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * keyboard.c (decode_keyboard_code): New function.
  -     (tty_read_avail_input): Decode the input bytes if necessary.
  -
  -     * coding.c (setup_coding_system):
  -     Initialize coding->carryover_bytes to 0.
  -     (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
  -     use Qno_conversion.
  -
  -2009-07-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
  -
  -2009-06-30  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
  -
  -2009-06-30  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32term.c (w32_initialize): Use GetModuleHandle for library that
  -     is already loaded.
  -     Set user model ID if supported (bug#1849).
  -
  -2009-06-29  Jim Meyering  <meyering@redhat.com>
  -
  -     Remove useless if-before-xfree test.
  -     * nsfont.m (nsfont_close): Remove useless test.
  -     * term.c (delete_tty): Likewise.
  -     * w32.c (system_process_attributes): Likewise.
  -     * w32font.c (w32font_close): Likewise.
  -     * xfaces.c (x_free_gc): Likewise.
  -     * xselect.c (buffer): Likewise.
  -
  -2009-06-28  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * process.c (send_process): Keep decoded string in a local
  -     variable and protect it from GC.  (Bug#3521)
  -
  -2009-06-28  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * term.c (create_tty_output) [MSDOS]: #ifdef away.
  -     (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
  -
  -2009-06-28  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (start_display, handle_face_prop)
  -     (move_it_vertically_backward, cursor_row_fully_visible_p)
  -     (redisplay_window, try_window_id, produce_image_glyph):
  -     Delete some #ifdef-ed out code chunks that are now obsolete.
  -
  -     * xterm.c (x_update_window_begin, x_new_focus_frame)
  -     (x_scroll_bar_handle_click, handle_one_xevent)
  -     (handle_one_xevent, XTread_socket, x_focus_on_frame)
  -     (x_make_frame_visible, x_make_frame_invisible)
  -     (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
  -     code chunks that are now obsolete.
  -
  -2009-06-28  Michael Albinus  <michael.albinus@gmx.de>
  -
  -     * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
  -     xd_symbol_to_dbus_type.  With Solaris 2.11, it was said to compile
  -     for hours, when optimzation is enabled.
  -     (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
  -     (xd_read_message): Make them static.
  -
  -2009-06-27  Chuck Blake  <cblake@pdos.csail.mit.edu>  (tiny change)
  -
  -     * term.c (turn_on_face): Allow simultaneously bold and dim
  -     terminal faces (Bug#3530).
  -
  -2009-06-27  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
  -
  -     * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
  -     truncation glyphs (Bug#3686).
  -
  -2009-06-27  Glenn Morris  <rgm@gnu.org>
  -
  -     * m/pmax.h: Restore file, with only netbsd portions.
  -
  -2009-06-26  David Reitter  <david.reitter@gmail.com>
  -
  -     * nsterm.m (keydown): Avoid infinite loop.
  -
  -2009-06-26  Peter Jolly  <peter@jollys.org>  (tiny change)
  -
  -     * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
  -     the arg FORCE_SYMBOL.
  -
  -2009-06-25  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (fontset_find_font): When a usable rfont_def is found
  -     in a fallback font-group, make it the first element of the group.
  -
  -2009-06-24  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
  -
  -2009-06-24  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (fontset_get_font_group): Return 0 if no font-group is
  -     set for C.
  -     (fontset_font): Record the availability of a font for C both in
  -     the realized fontsets of the current one and the default one.
  -
  -2009-06-23  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
  -     conditional, it is always defined on AIX.
  -
  -2009-06-23  Miles Bader  <miles@gnu.org>
  -
  -     * window.c (Vrecenter_redisplay): New variable.
  -     (syms_of_window): Initialize it.
  -     (Qtty): New extern declaration.
  -     (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
  -
  -2009-06-23  Jim Meyering  <meyering@redhat.com>
  -
  -     * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
  -     Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
  -     pointer dereferences are guaranteed to be valid.
  -
  -2009-06-23  Kenichi Handa  <handa@m17n.org>
  -
  -     * emacs.c (main): Call init_font ().
  -
  -     * font.h (Vfont_log): Extern it.
  -     (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
  -
  -     * font.c (font_sort_entities, font_list_entities)
  -     (font_matching_entity, font_open_entity)
  -     (font_close_object): Change font_add_log to FONT_ADD_LOG.
  -     (Vfont_log): Delete static.
  -     (font_log_env_checked): Delete this variable.
  -     (font_add_log): Don't check font_log_env_checked.
  -     (font_deferred_log): Check Vfont_log.
  -     (init_font): New function.
  -
  -     * ftfont.c: Change font_add_log to FONT_ADD_LOG.
  -
  -     * w32font.c: Change font_add_log to FONT_ADD_LOG.
  -
  -     * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
  -
  -     * xfont.c: Change font_add_log to FONT_ADD_LOG.
  -
  -     * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
  -     (face_for_char): Don't call font_deferred_log here.
  -     (font_for_char): Likewise.
  -
  -2009-06-22  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * w32term.c (x_draw_glyph_string): Use the glyph string's width
  -     rather than its background_width for drawing the overline and
  -     underline (Bug#489).
  -
  -     * xterm.c (x_draw_glyph_string): Use the glyph string's width
  -     rather than its background_width for drawing the overline and
  -     underline (Bug#489).
  -     (xg_default_icon_file): New variable.
  -     (syms_of_xterm): Initialize it to the Emacs SVG icon file.
  -     (x_bitmap_icon): Under GTK, use xg_default_icon_file.
  -
  -     * xdisp.c (Qbefore_string, Qafter_string): Add externs.
  -     (load_overlay_strings): Remove externs.
  -     (fast_find_position): Function deleted.
  -     (mouse_face_from_buffer_pos): New function, based on
  -     fast_find_position.  Correctly handle before-strings,
  -     display-strings, and after-strings (Bug#1220).
  -     (note_mouse_highlight): Use mouse_face_from_buffer_pos.
  -
  -2009-06-21  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
  -     (move_it_in_display_line_to, move_it_in_display_line_to)
  -     (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
  -
  -2009-06-21  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * Branch for 23.1.
  -
  -2009-06-21  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32term.c (keyboard_codepage): New static variable.
  -     (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
  -     (w32_read_socket) [WM_CHAR]: Use it to decode character
  -     input (bug#3237).
  -     (w32_initialize): Initialize it.
  -     (codepage_for_locale): New function.
  -
  -2009-06-20  Ken Raeburn  <raeburn@raeburn.org>
  -
  -     * process.c (status_message): Pass Faset index argument as a lisp
  -     object, so as to work with USE_LISP_UNION_TYPE.
  -
  -2009-06-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * coding.c (Ffind_coding_systems_region_internal):
  -     Cache checked characters.
  -
  -2009-06-18  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
  -
  -2009-06-18  Andreas Schwab  <aschwab@redhat.com>
  -
  -     * xdisp.c (redisplay_internal): Check that the frame is still
  -     live after redisplay of its windows.
  -     (redisplay_windows): Check that the window is still live.
  -
  -2009-06-17  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * coding.c (detect_coding_utf_16): Fix previous change.
  -
  -2009-06-16  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (detect_coding_utf_16): Fix the logic of rejecting
  -     UTF-16 by checking the dispersion of Eth and Oth bytes.
  -
  -2009-06-15  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
  -
  -2009-06-15  Kenichi Handa  <handa@m17n.org>
  -
  -     * process.c (status_message): Fix previous change.  Be sure to
  -     decode a localized string.
  -
  -2009-06-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * xterm.c (x_delete_terminal): Put previous change in #if 0 and
  -     add comment explaining why.
  -
  -2009-06-14  Sidney Markowitz  <sidney@sidney.com>
  -
  -     * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
  -
  -2009-06-14  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsfont.m (ns_attribute_value): Remove.
  -     (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
  -     (ns_has_attribute): Shrink the normal range.
  -     (ns_findfonts): Don't worry about requested spec in determining
  -     need for synthItal.
  -     (ns_get_covering_families): Retain scriptToFamilies.
  -
  -2009-06-14  Seiji Zenitani  <zenitani@mac.com>
  -
  -     * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
  -
  -2009-06-11  Kenichi Handa  <handa@m17n.org>
  -
  -     * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
  -     overhang for the static composition case.
  -
  -2009-06-11  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
  -     overhang for the automatic composition case.
  -
  -     * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
  -     composition case.
  -
  -2009-06-10  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (get_next_display_element): When handling wrap-prefix
  -     and line-prefix, treat \n as a control character (bug#3502).
  -
  -2009-06-10  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_parse_family_registry): Fix for one-char foundry.
  -     (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
  -
  -2009-06-09  Dmitry Dzhus  <dima@sphinx.net.ru>  (tiny change)
  -
  -     * process.c (status_message): Fix handling of multibyte signal
  -     string (Bug#3499).
  -
  -2009-06-09  Jim Meyering  <meyering@redhat.com>
  -
  -     * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
  -     color name is missing.
  -
  -2009-06-09  Kenichi Handa  <handa@m17n.org>
  -
  -     * charset.c (Fmap_charset_chars): In docstring, state clearly that
  -     FROM-CODE and TO-CODE are codepoints of CHARSET.
  -
  -2009-06-08  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsterm.m (ns_use_system_highlight_color): Drop, unused.
  -
  -2009-06-08  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     Changes to support :script/:lang/:otf in NS font driver.
  -     * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
  -     (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
  -     indicate not part of font driver interface, and change callers.
  -     (ns_get_family): Remove pointless null check.
  -     (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
  -     ns_spec_to_descriptor, ns_descriptor_to_entity.
  -     (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
  -     (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
  -     (ns_spec_to_descriptor, ns_descriptor_to_entity)
  -     (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
  -     (ns_get_req_script, ns_accumulate_script_ranges)
  -     (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
  -     New functions.
  -     (nsfont_list, nsfont_match): Use ns_findfonts.
  -     (nsfont_open): Use font descriptor instead of traits.
  -     (nsfont_draw): Handle "automatic" (lookup-table) compositions.
  -     (dump_glyphstring): Rename to ns_dump_glyphstring.
  -
  -     * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
  -
  -     * nsfns.m (Fns_popup_font_panel): Use shared font manager.
  -
  -     * fontset.c (fontset_from_font): Remove NS-specific code.
  -
  -2009-06-08  Peter Jones  <pjones@pmade.com>  (tiny change)
  -
  -     * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
  -     nonactive windows.
  -
  -2009-06-08  Felix Mueller  <felix@enqueue.eu>  (tiny change)
  -
  -     * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
  -
  -2009-06-08  Wolfgang Lux  <wolfgang.lux@gmail.com>  (tiny change)
  -
  -     * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
  -
  -2009-06-07  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (move_it_in_display_line_to): On text-only terminals,
  -     account for the overflowing of newlines into the last glyph on the
  -     display line (Bug#3482).
  -
  -2009-06-05  David Reitter  <david.reitter@gmail.com>
  -
  -     * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
  -     (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
  -     Fns_selection_exists_p, Fns_selection_owner_p.
  -
  -2009-06-03  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
  -     available.  (Bug#3379)
  -
  -2009-05-29  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (get_translation_table):
  -     Check Venable_character_translation.
  -
  -2009-05-26  David Reitter  <david.reitter@gmail.com>
  -
  -     * nsterm.m (ns_raise_frame): Only raise frame if visible.
  -     (x_make_frame_visible): Move frame to front rather than calling
  -     ns_raise_frame().
  -     (keyDown:): Do not swallow events that aren't re-sent if frame
  -     isn't key window.
  -     (drawRect:): Do not set visibility/iconified flags because
  -     drawRect may be called by NSView even if the frame is hidden.
  -
  -     * nsfns.m (Fx_create_frame): Follow other ports in
  -     determining visibility; default to t.  Ensure async_visible is set.
  -
  -2009-05-23  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * dired.c (Ffile_attributes): Doc fix.
  -
  -2009-05-22  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
  -
  -2009-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
  -     and xfont_scratch_props.
  -     (syms_of_xfont): Do it here instead.
  -     (xfont_find_ccl_program): Delete, unused.
  -     (xfont_open): Delete unused var `i'.
  -
  -2009-05-21  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (Qlatin): Don't make it static.
  -
  -     * xfont.c (xfont_chars_supported, xfont_supported_scripts):
  -     New functions.
  -     (xfont_scripts_cache, xfont_scratch_props): New variables.
  -     (Qlatin, Vscalable_fonts_allowed): Extern it.
  -     (xfont_list_pattern): Argument changed.  Callers changed.
  -     Check Vscalable_fonts_allowed.  Check the support of a script.
  -     (xfont_list): Don't reject a font spec with :script property.
  -     (xfont_has_char): Fix setting of encoding.
  -     (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
  -     xfont_scratch_props.
  -
  -2009-05-19  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_sort_entities): Rename from font_sort_entites.
  -     Callers changed.
  -
  -2009-05-18  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
  -
  -2009-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
  -     (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
  -
  -2009-05-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
  -     (x_delete_terminal): Dissociate resource database from display and
  -     then call XrmDestroyDatabase before closing display.
  -
  -2009-05-18  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsterm.m (ns_read_socket): Remove unused variable.
  -     * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
  -     whether selected frame is viable before raising it (based on patch
  -     by David Reitter), and improve commentary.
  -     * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
  -
  -2009-05-15  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (Ffont_spec): Check arguments.
  -
  -2009-05-14  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
  -     weight when testing attributes (Bug#3282).
  -
  -2009-05-11  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
  -     what we expect to get in the next ConfigureNotify event.
  -
  -     * xftfont.c (xftfont_open): Make sure that Xrender extension is added
  -     before Xft one (Bug#1696).
  -
  -2009-05-07  David Reitter  <david.reitter@gmail.com>
  -
  -     * nsfns.m (Fx_display_planes): Compute bitplanes using
  -     NSBitsPerPixelFromDepth (Bug#3207).
  -
  -2009-05-10  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
  -
  -2009-05-10  Ulrich Mueller  <ulm@gentoo.org>
  -
  -     * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
  -
  -2009-05-07  David Reitter  <david.reitter@gmail.com>
  -
  -     * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
  -     Respect mouse face background.
  -
  -2009-05-07  David Reitter  <david.reitter@gmail.com>
  -
  -     * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
  -     Mouse movement/highlight: bracket drawing operations
  -     in ns_update_begin and ns_update_end.
  -
  -2009-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * nsfns.m (ns_get_screen): Rewrite.
  -     Don't presume selected-frame is of type `ns'.
  -
  -     * font.c (font_update_drivers): Sanity fallback to avoid disabling
  -     all drivers.
  -
  -     * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
  -
  -2009-05-06  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * keyboard.h (add_user_signal): Fix typo in extern.
  -
  -     * lisp.h (add_user_signal): Remove extern.
  -
  -     * unexelf.c (unexec): Consider a section to precede the .bss section
  -     if its addresses overlap that of .bss.
  -     (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
  -     instead of dumping process.
  -
  -2009-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
  -
  -2009-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
  -
  -2009-05-02  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * xterm.c (x_handle_net_wm_state): Move declaration of lval before
  -     any statements.
  -
  -2009-05-02  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * process.c (read_process_output): Make sure the current buffer is
  -     always restored.
  -
  -     * coding.c (record_conversion_result): Don't modify
  -     Vlast_code_conversion_error for successful result.
  -     (alloc_destination): Don't clobber conversion result.  (Bug#1650)
  -
  -2009-05-01  Emanuele Giaquinta  <emanuele.giaquinta@gmail.com>  (tiny change)
  -
  -     * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
  -     (load_charset_map): Remove unnecessary code.
  -
  -2009-04-30  David Reitter  <david.reitter@gmail.com>
  -
  -     * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
  -     through f24.
  -
  -2009-04-30  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xfaces.c (face_at_buffer_position): New arg base_face_id.
  -
  -     * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
  -     face_at_buffer_position.
  -     (face_before_or_after_it_pos, get_next_display_element)
  -     (note_mouse_highlight): Update face_at_buffer_position call.
  -
  -     * term.c (term_mouse_highlight):
  -     * msdos.c (IT_note_mouse_highlight):
  -     * fontset.c (Finternal_char_font):
  -     * font.c (font_at, font_range): Update face_at_buffer_position call.
  -
  -     * dispextern.h (face_at_buffer_position): Update prototype.
  -
  -2009-04-30  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
  -
  -2009-04-29  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * callproc.c (Fcall_process): Fix GC protection.  Make sure
  -     current buffer is always restored.
  -
  -2009-04-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * atimer.c (init_atimer): Also clear stopped_atimers.
  -
  -     * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
  -
  -     * process.c (create_process): Clean up merger residues of
  -     2008-07-17 change.
  -
  -2009-04-29  Ulrich Mueller  <ulm@gentoo.org>
  -
  -     * lread.c (Vread_circle): New variable.
  -     (read1): Disable recursive read if Vread_circle is nil.
  -
  -2009-04-29  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.h (set_default_ascii_font): Delete extern.
  -
  -     * fontset.c (set_default_ascii_font): Delete this unused function.
  -
  -     * frame.c (x_set_font): When ARG is a font-object, check if the
  -     font-object matches with the ASCII font-spec of the frame's
  -     fontset.  If not, create a new fontset for the frame.  (Bug #3075)
  -
  -2009-04-28  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * fns.c (Flocale_info): Protect vector from GC during decoding.
  -
  -     * process.c (Fstart_process): Protect argv strings from GC during
  -     encoding.
  -
  -2009-04-27  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * sysdep.c: Include <ctype.h>.
  -
  -2009-04-27  David Reitter  <david.reitter@gmail.com>
  -
  -     * nsfont.m (nsfont_open): Remove unused variable shrink.
  -     Remove commented-out code.
  -
  -2009-04-26  Johan Bockgård  <bojohan@gnu.org>
  -
  -     * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
  -
  -2009-04-25  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
  -
  -2009-04-25  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
  -     Swap bytes in short integer if fringe bitmap width > 8.
  -
  -2009-04-23  Kenichi Handa  <handa@m17n.org>
  -
  -     * xfaces.c (Fx_list_fonts): If a font size is specified in
  -     PATTERN, set it in returned scalable fonts.
  -
  -2009-04-22  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * keyboard.c (Fset_input_meta_mode): Doc fix.
  -
  -     * dispnew.c (Fsend_string_to_terminal): Doc fix.
  -
  -     * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
  -
  -     * coding.c (Fterminal_coding_system): Doc fix.
  -
  -     * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
  -     (Fx_display_pixel_height, Fx_display_planes)
  -     (Fx_display_color_cells, Fx_server_max_request_size)
  -     (Fx_server_vendor, Fx_server_version, Fx_display_screens)
  -     (Fx_display_mm_height, Fx_display_mm_width)
  -     (Fx_display_backing_store, Fx_display_visual_class)
  -     (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
  -     Doc fixes, replacing "terminal id" with "terminal object".
  -     (check_x_display_info): Handle terminal objects instead of
  -     terminal ids.
  -
  -     * term.c (Ftty_display_color_p, Ftty_display_color_cells)
  -     (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
  -     (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
  -     Doc fixes, replacing "terminal id" with "terminal object".
  -
  -2009-04-21  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_load_for_lface): Cancel previous change (bug#2994).
  -     (font_score): Check AVGWIDTH too.
  -
  -     * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
  -     worst case.
  -     (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
  -     (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
  -
  -2009-04-19  Jason Rumney  <jasonr@gnu.org>
  -
  -     The following changes fix Bug#3005 for wide glyphs on each platform,
  -     without reintroducing Bug#1258 for stretch glyphs.
  -
  -     * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
  -     BAR_CURSOR and HBAR_CURSOR.  Calculate width of HBAR_CURSOR using
  -     get_phys_cursor_geometry.
  -
  -     * w32term.c (x_draw_bar_cursor): Limit cursor width differently
  -     for BAR_CURSOR and HBAR_CURSOR.  Calculate width of HBAR_CURSOR
  -     using get_phys_cursor_geometry.
  -
  -     * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
  -     correctly calculated.
  -
  -2009-04-19  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
  -     Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
  -     (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
  -     is deprecated.
  -
  -2009-04-18  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * font.c (font_put_frame_data): Use xfree instead of free.
  -
  -2009-04-17  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * w32font.c (Qja, Qko): Remove declarations.
  -     (syms_of_w32font): Don't DEFSYM them.
  -
  -2009-04-17  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * font.c (Qja, Qko): Move definitions here from ftfont.c.
  -
  -     * font.h (Qja, Qko): Extern them.
  -
  -     * ftfont.c (Qja, Qko): Remove declarations.
  -
  -     * xfont.c (Qja, Qko): Remove declarations.
  -
  -2009-04-17  Kenichi Handa  <handa@m17n.org>
  -
  -     * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
  -     string from a vector to handle Latin-1 characters correctly.
  -
  -     * ftfont.c (ftfont_pattern_entity): Return a newly allocated
  -     entity even if the cache hits.
  -
  -2009-04-16  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * search.c (boyer_moore): Use zero as marker value for a possible
  -     match instead of depending on overflow behavior.  (Bug#2844)
  -
  -     * search.c: Use EMACS_INT for buffer positions.  Add prototypes.
  -     * lisp.h: Adjust prototypes.
  -
  -2009-04-16  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * keyboard.c (adjust_point_for_property): Disable 2009-02-12
  -     change (Bug#3003).
  -
  -2009-04-16  Kenichi Handa  <handa@m17n.org>
  -
  -     * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
  -
  -     * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
  -     adstyle.
  -
  -     * ftfont.c (Qja, Qko): Don't make them static.
  -     (enum ftfont_cache_for): New enum.
  -     (fc_charset_table): Undo the previous change.
  -     (ftfont_get_latin1_charset): Delete it.
  -     (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
  -     Set FONT_SIZE_INDEX of the entity to 0 for a scalable font.  For a
  -     non-scarable font, try to get AVERAGE_WIDTH.
  -     (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
  -     Change ft_face_cache from a list of a hash-table.  Don't check
  -     `ja' and `ko' adstyle here.
  -     (ftfont_get_fc_charset): Call ftfont_lookup_cache with
  -     FTFONT_CACHE_FOR_CHARET.
  -     (ftfont_get_charset): Undo the previous change.
  -     (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
  -     (ftfont_close): Likewise.
  -     (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
  -
  -     * font.c (font_sort_entites): Change the meaning of the arg
  -     BEST-ONLY.  Don't optimize for VEC of lenght 1.
  -     (font_select_entity): Just return the value of font_sort_entites.
  -
  -     * xfaces.c (merge_face_vectors): Reflect font properties in
  -     to[LFACE_FONT_INDEX] to the other face attributes.  Don't call
  -     font_clear_prop if a face attribute doesn't change.
  -
  -     * charset.h (charset_ksc5601): Extern it.
  -
  -     * charset.c (charset_ksc5601): New variable.
  -     (Fdefine_charset_internal): Set charset_ksc5601.
  -     (init_charset_once): Initialize charset_ksc5601 to -1.
  -
  -2009-04-15  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * fileio.c (history_delete_duplicates): Remove unused declaration.
  -
  -     * callint.c (history_delete_duplicates): New declaration.
  -     (Fcall_interactively): Remove command history duplicates when
  -     history_delete_duplicates is true.
  -
  -2009-04-14  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
  -
  -2009-04-14  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (Ffont_info): Fix docstring.  Fix the second element of
  -     the returned value (bug#2949).
  -
  -2009-04-14  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
  -
  -2009-04-14  Kenichi Handa  <handa@m17n.org>
  -
  -     * xfont.c (xfont_has_char): The font has C if C is ASCII and the
  -     encoding charset is ascii_compatible.
  -
  -     * charset.c (Fdefine_charset_internal): Make charset
  -     ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
  -     code_offset is 0, and covers all ASCII characters.
  -
  -2009-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
  -     (ns_string_to_pasteboard_internal):
  -     * nsmenu.m (process_dialog):
  -     * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
  -     * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
  -     * lisp.h (Fx_load_color_file): Declare.
  -
  -2009-04-13  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_delete_unmatched): Preserve the order of list elements.
  -     (font_select_entity): Suppress the code to optimize for the same
  -     kind of fonts.
  -     (font_load_for_lface): Get a font that supports at least ASCII
  -     characters.
  -
  -     * ftfont.c (Qja, Qko): New variables.
  -     (fc_charset_table): Delete uniquifier data for iso8859-1.
  -     (ftfont_get_latin1_charset): New function.
  -     (get_adstyle_property): New function.
  -     (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
  -     bitmap fonts.
  -     (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
  -     Delete iso-8859-1 range from the charset of fonts whose adstyle is
  -     `ko' or `ja'.
  -     (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
  -     (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
  -     (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
  -     property.
  -     (ftfont_open): Call ftfont_lookup_cache with ENTITY.
  -     (syms_of_ftfont): DEFSYM Qja and Qko.
  -
  -2009-04-09  Kenichi Handa  <handa@m17n.org>
  -
  -     * charset.c (map_charset_chars): For a charset of `superset'
  -     method, fix calculation of code range.
  -
  -     * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
  -     from the list of extra properties.
  -     (font_clear_prop): Be sure to delete `:name' font property.
  -
  -2009-04-08  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * dispnew.c (redraw_overlapping_rows): Fix detection of
  -     overlapping for topmost and bottommost rows.
  -
  -     * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
  -
  -2009-04-06  Jason Rumney  <jasonr@gnu.org>
  -
  -     * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
  -
  -2009-04-06  Kenichi Handa  <handa@m17n.org>
  -
  -     * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
  -
  -     * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
  -
  -2009-04-06  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * ftfont.c (ftfont_open): Fix checking of the return value of
  -     FT_Load_Char.  Fix setting font->underline_thickness.
  -
  -2009-04-04  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
  -     (Fterminal_parameters, Fterminal_parameter)
  -     (Fset_terminal_parameter): In doc string, refer to terminal
  -     objects rather than terminal ids.
  -
  -2009-04-04  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
  -     ret_lim_data.  (Bug#2867)
  -
  -2009-04-03  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
  -     so they don't get wider than the window, matching 2006-01-23
  -     change to the partner function in xdisp.c (Bug#2800).
  -
  -2009-04-03  Kenichi Handa  <handa@m17n.org>
  -
  -     * print.c (print_object): Make each lowest sub_char_table start a
  -     new line (Bug#2866).
  -
  -2009-04-02  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (fontset_font): Record no-font when a fontset
  -     explicitly tells not to try another font-specs.
  -
  -2009-03-30  Pierre Poissinger  <pierre.poissinger@gmail.com>  (tiny change)
  -
  -     * charset.c (map_charset_for_dump): Add missing UNGCPRO.
  -
  -2009-03-30  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (fontset_from_font): Specify only registry in a
  -     font-spec for all characters supported by that registry.
  -
  -     * ftfont.c: Fix previous change.  Define ftfont_variation_glyphs
  -     even if HAVE_M17N_FLT is not defined.
  -
  -2009-03-29  Sebastian Rose  <sebastian_rose@gmx.de>  (tiny change)
  -
  -     * ftfont.c: Conditionalize prototyping and use of
  -     ftfont_variation_glyphs.
  -
  -2009-03-28  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * frame.c (delete_frame): Work around compiler bug.
  -
  -     * editfns.c (general_insert_function): Adjust to insdel.c changes.
  -     * insdel.c (prepare_to_modify_buffer, signal_before_change):
  -     Some more EMACS_INT.
  -     * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
  -
  -     * xdisp.c (dump_glyph): Fix typo.
  -
  -     * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
  -     (adjust_markers_gap_motion, adjust_markers_for_delete)
  -     (adjust_markers_for_insert, adjust_point)
  -     (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
  -     (make_gap, copy_text, count_size_as_multibyte, insert)
  -     (insert_and_inherit, insert_before_markers)
  -     (insert_before_markers_and_inherit, insert_1)
  -     (count_combining_before, count_combining_after, insert_1_both)
  -     (insert_from_string, insert_from_string_before_markers)
  -     (insert_from_string_1, insert_from_gap, insert_from_buffer)
  -     (insert_from_buffer_1, adjust_after_replace)
  -     (adjust_after_replace_noundo, adjust_after_insert, replace_range)
  -     (replace_range_2, del_range, del_range_1, del_range_byte)
  -     (del_range_both, del_range_2, modify_region)
  -     (prepare_to_modify_buffer, signal_before_change)
  -     (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
  -     for buffer positions and sizes.
  -     * lisp.h: Adjust prototypes accordingly.
  -
  -     * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
  -     (non_regular_inserted, non_regular_nbytes, read_non_regular)
  -     (Finsert_file_contents): Use EMACS_INT for buffer positions.
  -
  -     * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
  -
  -2009-03-27  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
  -     lines and columns so we keep the same pixel height and width.
  -
  -     * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
  -     the property _NET_WM_STATE has changed.
  -     (x_handle_net_wm_state): New function to update frame parameter
  -     fullscreen.
  -     (x_term_init): Initialize atoms for _NET_WM_STATE.
  -
  -     * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
  -
  -2009-03-27  Kevin Ryde  <user42@zip.com.au>
  -
  -     * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
  -     Gpm_GetEvent as an error that justifies closing the filedescriptor.
  -     * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
  -     (Fgpm_mouse_stop): Pass that new parameter.
  -     * termhooks.h (close_gpm): Adjust prototype.
  -
  -2009-03-26  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * lisp.h (Fx_focus_frame): Declare.
  -
  -     * callint.c (Fcall_interactively): For '^' just delegate the work to
  -     handle-shift-selection.
  -     (syms_of_callint): Move declaration of shift-select-mode to simple.el.
  -
  -2009-03-24  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * editfns.c (Ffloat_time): Doc fix (Bug#2768).
  -
  -     * data.c (Qinteractive_form): New variable.
  -     (Finteractive_form): Use it.
  -
  -     * eval.c (Fcommandp): Use Qinteractive_form.
  -
  -2009-03-24  Jason Rumney  <jasonr@gnu.org>
  -
  -     * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
  -     Calculate total size precisely.  Decode environment variables
  -     before substituting.  (Bug#38)
  -
  -2009-03-24  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (find_font_encoding): Return Qnil for unsupported
  -     encoding (Bug#2722).
  -
  -2009-03-23  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
  -     that gdpy is set.
  -
  -2009-03-22  Alan Mackenzie  <acm@muc.de>
  -
  -     * callint.c (Finteractive): Clarify the doc string - even
  -     promptless elements need \n separators.
  -
  -2009-03-22  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32term.c (syms_of_w32term): Doc fix for
  -     x-use-underline-position-properties.
  -
  -2009-03-21  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * w32.c (getpwuid): Change argument type to unsigned.
  -     (struct w32_id): Change type of `rid' member to unsigned.
  -     (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
  -     argument ID to unsigned.  All callers changed.
  -     (getuid, geteuid, getgid, getegid): Change return type to unsigned.
  -
  -2009-03-20  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
  -     negative, produce a float value.
  -
  -     * dired.c (make_uid, make_gid): New functions.
  -     (Ffile_attributes): Use them to avoid negative UID and GID.
  -
  -2009-03-20  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * keyboard.c (Fcurrent_idle_time): Reflow docstring.
  -     (syms_of_keyboard) <command-hook-internal, input-method-function>:
  -     Fix typos in docstrings.
  -
  -2009-03-19  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (Fset_fontset_font): When a spec of ASCII font is
  -     changed, use font_load_for_lface to get a new font object.
  -     Call free_realized_fontset after handling ASCII font change.
  -
  -     * frame.c (x_set_font): Handle the case that ARG is a cons.
  -
  -2009-03-19  Glenn Morris  <rgm@gnu.org>
  -
  -     * fileio.c (Fsubstitute_in_file_name): Doc fix.
  -
  -2009-03-19  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
  -
  -2009-03-19  Kenichi Handa  <handa@m17n.org>
  -
  -     * charset.c (load_charset_map_from_file): When a mapfile can't be
  -     loaded, signal an error.
  -
  -2009-03-18  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * dired.c (Ffile_attributes): Make sure UID and GID are always
  -     positive, even if the value is too large for a positive EMACS_INT.
  -     Doc fix.
  -
  -     * editfns.c (Fuser_login_name): Support float arguments.  Doc fix.
  -
  -2009-03-18  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * xmenu.c (xdialog_show): Move Fredisplay call ...
  -     (Fx_popup_dialog): ... here.
  -
  -2009-03-18  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * dired.c (file_name_completion): Disable the first optimization just
  -     installed, since it is not implemented correctly.
  -
  -2009-03-17  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * dired.c (file_name_completion): Check completion-ignored-extensions
  -     only if the entry can affect bestmatch.
  -     Stop the search early, as Ftry_completion already does.
  -
  -2009-03-17  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
  -
  -2009-03-15  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * keyboard.c (parse_menu_item): Don't display remappings as menu
  -     equivalent bindings (Bug#788).
  -
  -2009-03-15  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32term.h (WM_EMACS_PAINT): New message.
  -     * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
  -     * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
  -     before passing to lisp thread.  (Bug#950)
  -
  -2009-03-14  David Reitter  <david.reitter@gmail.com>
  -
  -     * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
  -     variable as it was never reset.
  -     (ns_term_init): Remove initialization of Lisp-settable defaults
  -     and ns_expand_space.
  -     (-setPanelFromDefaultValues): Remove ns_expand_space.
  -     (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
  -     * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
  -     i.e. no additional spacing, similar to Carbon port.
  -
  -     * nsterm.h: Define KEY_NS_SHOW_PREFS key.
  -     * nsfns.m (ns-popup-prefs-panel): Remove.
  -
  -2009-03-14  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * sound.c (alsa_configure): Remove call to deprecated
  -     snd_pcm_sw_params_set_xfer_align.
  -
  -2009-03-14  Stephen Berman  <stephen.berman@gmx.net>
  -
  -     * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
  -     after clicking in a detached tool bar.
  -     (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
  -
  -2009-03-13  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
  -     int/Lisp_Object mixup).
  -
  -2009-03-13  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
  -     Handle NAME nil and t correctly.  Callers changed.
  -     (font_def_arg, add_arg, from_arg, to_arg): Delete them.
  -     (set_fontset_font): Change ARG to a vector.  Handle range_list in
  -     ARG correctly.
  -     (Fset_fontset_font): Fix the case that TARGET is both a script
  -     name and charset name.  Adjust the arg to set_fontset_font for
  -     the above change.
  -     (fontset_from_font): Fix previous change.
  -     (Ffontset_info): Adjust for the 2008-07-09 change of fontset
  -     entry.  If FONTSET is the default fontset, don't set the extra
  -     slot of the returning char-table.
  -
  -2009-03-12  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * nsfns.m (Fx_close_connection): Doc fix.
  -     (Fns_do_applescript): Reflow docstring.
  -     (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
  -     (Fx_display_pixel_width, Fx_display_pixel_height)
  -     (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
  -     Fix typos in docstrings.
  -     (Fns_set_alpha): Fix typos in error messages.
  -
  -2009-03-12  David Reitter  <david.reitter@gmail.com>
  -
  -     * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
  -     non-key system events on NS.  Formerly, NON_ASCII_KEYSTROKE_EVENT
  -     were used for such events.
  -
  -     * nsterm.m (newFrame, openFile, fulfillService, changeFont)
  -     (toggleToolbar, performDragOperation, runHelp): Use it.
  -
  -     * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
  -     NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
  -
  -2009-03-11  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.h (font_open_by_spec): Extern it.
  -
  -     * font.c (font_open_by_spec): New function.
  -     (font_open_by_name): Use font_open_by_spec.
  -
  -     * frame.c (x_set_font): When ARG is a font-object, don't alter the
  -     fontset of the frame.
  -
  -     * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
  -     modify the default font of frames that use this fontset.
  -     (num_auto_fontsets): New variable.
  -     (fontset_from_font): Use num_auto_fontsets to decide a fontset
  -     name.  Be sure to set FONTSET_ASCII to the correct font name.
  -     (update_auto_fontset_alist): New function.
  -
  -2009-03-11  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * makefile.w32-in: Update dependencies.
  -
  -2009-03-06  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsfns.m (syms_of_nsfns): Remove Qbuffered.
  -
  -2009-03-10  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
  -
  -2009-03-10  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * lread.c (Feval_buffer): Doc fix.
  -
  -2009-03-09  Kenichi Handa  <handa@m17n.org>
  -
  -     * charset.c (Qfile_name_handler_alist): Extern it.
  -     (load_charset_map_from_file): Temporarily bind
  -     `file-name-handler-alist' to nil while calling openp.  (Bug#2435)
  -
  -2009-03-06  Aaron Ecay  <aaronecay@gmail.com>  (tiny change)
  -
  -     * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
  -     not two, and use NSRectFill instead of NSDrawGroove.  (Bug#2352)
  -
  -2009-03-06  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
  -     (x_set_window_size): Change back to calculated method of setting
  -     toolbar height under Cocoa.  (Bug#2546)
  -     (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
  -     (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
  -
  -     * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
  -
  -     * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
  -     accelerator in parens under GNUstep.
  -
  -2009-03-06  Kenichi Handa  <handa@m17n.org>
  -
  -     These changes are to detect incorrect composition sequence without
  -     looking ahead the source.  (Bug#2370)
  -
  -     * coding.h: Include "composite.h".
  -     (enum compisition_state): New enum.
  -     (struct compisition_status): New struct.
  -     (struct iso_2022_spec): New member cmp_status.
  -     (struct emacs_mule_spec): New struct.
  -     (struct coding_system): New members ctext_extended_segment_len and
  -     embedded_utf_8.  Change the union member
  -     spec.emacs_mule_full_support to spec.emacs_mule.
  -
  -     * coding.c (CODING_ISO_CMP_STATUS): New macro.
  -     (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
  -     (MAX_ANNOTATION_LENGTH): Define to 5.
  -     (ADD_COMPOSITION_DATA): New arg nbytes.
  -     (emacs_mule_char): New arg cmp_status.
  -     (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
  -     (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
  -     (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
  -     (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
  -     (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
  -     (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
  -     (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
  -     (EMACS_MULE_COMPOSITION_END): New macro.
  -     (emacs_mule_finish_composition): New function.
  -     (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
  -     (decode_coding_emacs_mule): Avoid long looking ahead while
  -     handling composition.
  -     (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
  -     (ENCODE_COMPOSITION_RULE): New macro.
  -     (finish_composition): New function.
  -     (MAYBE_FINISH_COMPOSITION): Call finish_composition.
  -     (DECODE_COMPOSITION_START): New implementation.
  -     (DECODE_COMPOSITION_END): Likewise.
  -     (STORE_COMPOSITION_RULE): New macro.
  -     (decode_coding_iso_2022): Avoid long looking ahead while handling
  -     composition, CTEXT extended segment, and embedded UTF-8.
  -     (setup_coding_system): For a coding of type iso-2022, reset
  -     CODING_ISO_EXTSEGMENT_LEN (coding) and
  -     CODING_ISO_EMBEDDED_UTF_8 (coding).
  -     (get_translation): Delete arguments last_block, from_nchars,
  -     to_nchars.  Callers changed.
  -     (produce_chars): Don't modify charbuf.  Adjusted for the change of
  -     get_translation.
  -     (produce_composition): Adjust for the new annotation sequence.
  -     (handle_composition_annotation): Likewise.
  -     (consume_chars): Adjust for the change of get_translation.
  -
  -2009-03-05  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsterm.m (ns_select): Shortcircuit if reentrant call.  (Bug#2564)
  -
  -2009-03-05  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_select_entity): New function.
  -     (font_find_for_lface): Use font_select_entity to select a font.
  -
  -     * fontset.c (fontset_find_font): If a font found without
  -     restricting to the characters C doesn't support C, try to find a
  -     font with C restriction.
  -
  -2009-03-04  Nikolaj Schumacher  <me@nschum.de>
  -
  -     * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
  -
  -2009-03-04  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
  -     characters that have already been read.  (Bug#2569)
  -
  -     * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
  -     Log an error message if check_image_size failed.
  -     (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
  -     (gs_load): Mention max-image-size in size error message.  (Bug#2560)
  -
  -2009-03-02  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
  -     when decoding process output.
  -
  -2009-03-01  Richard M Stallman  <rms@gnu.org>
  -
  -     * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
  -
  -     * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
  -
  -2009-02-28  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * coding.c (decode_coding_utf_8, decode_coding_utf_16)
  -     (decode_coding_emacs_mule, decode_coding_iso_2022)
  -     (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
  -     (decode_coding_raw_text, decode_coding_charset)
  -     (setup_coding_system, decode_eol, decode_coding, consume_chars):
  -     Honor inhibit-eol-conversion.  (Bug #2186)
  -
  -2009-02-28  Jason Rumney  <jasonr@gnu.org>
  -
  -     * coding.c (detect_coding_charset): If not checking latin extra,
  -     fail on characters between 0x80 and 0xA0.  (Bug#2354)
  -
  -2009-02-28  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * coding.c (detect_coding_charset): Fix change from 2008-10-21.
  -     Also, check iso-latin-*, not only iso-8859-*.  (Bug#2497)
  -
  -2009-02-27  Glenn Morris  <rgm@gnu.org>
  -
  -     * callint.c (Finteractive): Doc fix.
  -
  -2009-02-27  Kenichi Handa  <handa@m17n.org>
  -
  -     * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
  -
  -2009-02-27  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * font.c (font_style_to_value): Set value for unknown symbols to
  -     100 instead of 255.
  -     (weight_table, slant_table, width_table): Treat "unspecified" as
  -     the default value.
  -
  -2009-02-26  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
  -
  -2009-02-25  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * lread.c (Fload): Stop checking Vloads_in_progress and signal
  -     error as soon as a recursive load is detected.
  -
  -2009-02-24  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsterm.m (ns_ring_bell): Convert rect to window coordinates
  -     before caching.
  -
  -2009-02-24  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (fontset_find_font): Fix the condition for checking
  -     unavailable font.
  -
  -2009-02-24  Glenn Morris  <rgm@gnu.org>
  -
  -     * xfaces.c (Finternal_set_font_selection_order): Remove leading
  -     whitespace that confuses documentation.
  -
  -2009-02-23  Miles Bader  <miles@gnu.org>
  -
  -     * process.c (Flist_system_processes, Fprocess_attributes)
  -     (syms_of_process): Rename `system-process-attributes' to
  -     `process-attributes'.
  -
  -2009-02-22  Andreas Schwab  <schwab@linux-m68k.org>
  -
  -     * coding.h (struct coding_system): Make safe_charsets a pointer to
  -     unsigned char.
  -     * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
  -     being 255.
  -     (SAFE_CHARSET_P): Likewise.
  -     (setup_iso_safe_charsets): Properly setup safe_charsets.
  -     (Fdefine_coding_system_internal): Likewise.
  -     (setup_coding_system): Likewise.  Remove unneeded casts.
  -     (detect_coding_iso_2022): Compare Viso_2022_charset_list with
  -     CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS.  Remove
  -     unneeded casts.
  -
  -     * insdel.c (del_range_2): Don't modify gap contents when called
  -     from decode_coding_object.  (Bug#1809)
  -
  -2009-02-21  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
  -     Qfont_object.
  -     (Ftype_of): Recognize font objects.
  -
  -     * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
  -
  -     * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
  -     moved to data.c.
  -
  -2009-02-20  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsterm.m (x_make_frame_invisible): Unset async_visible,
  -     async_iconified.  Based on a patch by Christian Lynbech
  -     <christian.lynbech@tieto.com>.
  -     (EmacsView-windowDidMiniaturize:): Unset async_visible.
  -
  -2009-02-20  Glenn Morris  <rgm@gnu.org>
  -
  -     * syntax.c (Fskip_chars_forward): Fix doc typo.
  -
  -2009-02-20  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
  -
  -2009-02-19  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
  -
  -2009-02-19  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (detect_coding): Preserve coding->mode.
  -     Don't overflow coding->carryover.  (Bug#2370)
  -
  -2009-02-18  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
  -
  -2009-02-18  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_check_otf_features): Fix handling of `nil' element.
  -     (Ffont_spec): Describe :lang and :otf in the docstring.
  -
  -2009-02-16  Andreas Schwab  <schwab@suse.de>
  -
  -     * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
  -     string.
  -
  -2009-02-16  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
  -     (Bug#1723)
  -
  -2009-02-14  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * dispextern.h (struct iterator_stack_entry): New line_wrap member.
  -
  -     * xdisp.c (push_it, pop_it): Save and restore line_wrap.
  -     (handle_line_prefix): Suppress wrapping of wrap prefixes.
  -
  -2009-02-14  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * msdos.c (MAX_SCREEN_BUF): New macro.
  -     (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
  -     Encode the entire run of glyphs sharing the same face, instead of
  -     doing that one glyph at a time (fixes a bug with displaying
  -     double-size characters).
  -
  -2009-02-13  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
  -
  -     * nsmenu.m (pop_down_menu): Check popup_activated_flag.
  -     (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
  -     pop_down_menu do the cleanup work as it is always called.  (Bug#2154)
  -
  -     * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
  -     set fontset font for "mathematical-" sub-scripts.  (Bug #2218)
  -
  -2009-02-12  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * keyboard.c (adjust_point_for_property): Allow stopping between two
  -     invisible areas.
  -
  -2009-02-12  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (check_face_name): Check for fake helv.  (Bug#2275)
  -     (add_font_entity_to_list): Call check_face_name even when family
  -     is unspecified.
  -
  -     * w32term.c (x_display_pixel_height, x_display_pixel_width):
  -     Release DC when finished.  Use NULL window to refer to desktop.
  -     (w32_term_init): Use NULL window to refer to desktop.  (Bug#460)
  -
  -     * w32font.c (add_font_entity_to_list): Fix check for substituted
  -     raster fonts.  (Bug#2219)
  -
  -2009-02-12  Kenichi Handa  <handa@m17n.org>
  -
  -     * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
  -     (composition_gstring_width): Fix handling of LGLYPH_YOFF.
  -     (autocmp_chars): Use fast_looking_at.  Don't compose more
  -     characters than MAX_COMPOSITION_COMPONENTS.
  -     (find_automatic_composition): While looking forward and backward,
  -     check static composition.  Fix where to stop looking forward.
  -     (composition_adjust_point): Fix checking of static composition.
  -     (Fcomposition_get_gstring): Pay attention to
  -     MAX_COMPOSITION_COMPONENTS.
  -
  -     * lisp.h (fast_looking_at): Extern it.
  -
  -     * search.c (fast_looking_at): New function.
  -
  -     * term.c (encode_terminal_code): Adjust for the change of
  -     <struct glyph>.u.cmp.to.
  -     (append_composite_glyph): Likewise.
  -
  -     * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
  -     <struct glyph>.u.cmp.to.  Check if the glyph belongs to the same
  -     composition.
  -     (append_composite_glyph): Adjust for the change of
  -     <strcut glyph>.u.cmp.to.
  -
  -2009-02-11  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * casetab.c (init_casetab_once):
  -     * coding.c (ALLOC_CONVERSION_WORK_AREA):
  -     * font.c (font_update_lface):
  -     * fontset.c (Fnew_fontset):
  -     * ftfont.c (ftfont_drive_otf):
  -     * xfont.c (xfont_open):
  -     * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
  -
  -2009-02-11  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * fileio.c (Fwrite_region): !NILP -> CONSP.
  -
  -2009-02-10  Andreas Schwab  <schwab@suse.de>
  -
  -     * process.c (send_process): Properly relocate pointer into data
  -     when using encoded data.  (Bug#2272)
  -
  -2009-02-08  ARISAWA Akihiro  <ari@mbf.sphere.ne.jp>
  -
  -     * coding.c (detect_coding_charset): Fix previous change.
  -
  -2009-02-08  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32fns.c (w32_hide_hourglass): Handle case where frame
  -     disappeared while hourglass was displayed.  (Bug #2193)
  -
  -2009-02-07  Andreas Schwab  <schwab@suse.de>
  -
  -     * unexelf.c (unexec): Fix error message.
  -
  -2009-02-07  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
  -     when modal window is active.  (Bug #2152)
  -     (applicationShouldTerminate:): Remove now-unneeded while loop
  -     around NSRunAlertPanel.
  -
  -     * nsmenu.m (popupSession): New file-global variable.
  -     (pop_down_menu): End the popupSession before closing dialog.
  -     (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
  -     (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
  -     don't query NSApp for events (just sleep instead).
  -
  -2009-02-07  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * coding.c (syms_of_coding) <translation-table-for-input>:
  -     Modify doc string to discourage use for character code unification.
  -
  -2009-02-07  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * atimer.c (run_timers): Update pending_atimers.
  -
  -2009-02-06  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * image.c (svg_load_image): Fix last change.
  -
  -     * xfns.c (Fx_create_frame): Signal an error if no font is
  -     found (Bug#2147).
  -
  -2009-02-05  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * character.c (syms_of_character) <script-representative-chars>:
  -     Fix typo in docstring.
  -
  -2009-02-04  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsmenu.m (pop_down_menu): New function.
  -     (ns_popup_dialog): Call it on unwind.
  -     (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
  -     call timer_check() (Bug#2154).
  -     (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
  -     handling_signal is set.
  -     (EmacsMenu-fillWithWidgetValue:): Set submenu title.
  -
  -     * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
  -
  -     * s/darwin.h: Same and NO_SOCK_SIGIO as well.
  -
  -     * nsterm.m (ns_read_socket): Same and don't set handling_signal.
  -
  -     * keyboard.c (poll_for_input_1, handle_async_input):
  -     Set handling_signal under HAVE_NS.
  -
  -2009-02-04  Glenn Morris  <rgm@gnu.org>
  -
  -     * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
  -
  -2009-02-04  Kenichi Handa  <handa@m17n.org>
  -
  -     * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
  -
  -     * charset.c (Fchar_charset): New optional arg restriction.
  -
  -     * coding.h (coding_system_charset_list): Extern it.
  -
  -     * coding.c (coding_system_charset_list): New function.
  -
  -     * composite.c: Include coding.h and termhooks.h.
  -     (composition_gstring_p): Fix for the terminal case.
  -     (composition_gstring_width): Likewise.
  -     (fill_gstring_body): Likewise.
  -     (autocmp_chars): For terminal, call Fcomposition_get_gstring with
  -     the frame.
  -     (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
  -     is within a composition.
  -     (Fcomposition_get_gstring): Fix the terminal case.
  -
  -     * term.c (encode_terminal_code): Fix handling of composition.
  -     (produce_composite_glyph): For static composition, get pixel_width
  -     from struct composition.
  -
  -2009-02-02  Andreas Schwab  <schwab@suse.de>
  -
  -     * unexelf.c (unexec): Handle unaligned bss offset.
  -
  -2009-02-01  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
  -     XT,w32read_socket changes to ns_read_socket.
  -
  -     * keyboard.c (handle_interrupt): Don't call
  -     quit_throw_to_read_char() under NS.
  -
  -     * blockinput.h: Remove NS-specific code.
  -
  -2009-01-30  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * dispnew.c (window_change_signal): Don't try to get the size of a
  -     suspended tty frame.
  -     * term.c (Fresume_tty): Resize if the size has changed while the
  -     tty was suspended.
  -
  -     * alloc.c (mark_stack): Properly conditionalize previous change.
  -
  -2009-01-30  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
  -     * w32term.c (w32_read_socket) [SYNC_INPUT]:
  -     Remove; this code is not used on Windows.
  -
  -2009-01-30  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * coding.c (detect_eol, decode_eol): Handle text with DOS-style
  -     EOLs that also has stray ^M characters.
  -
  -2009-01-30  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * atimer.c (run_timers, alarm_signal_handler):
  -     * keyboard.c (pending_signals, handle_async_input, init_keyboard):
  -     * w32inevt.c (w32_console_read_socket):
  -     * w32term.c (w32_read_socket):
  -     * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
  -
  -2009-01-30  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
  -     Initialize it as a relative filename pattern.
  -     (init_callproc): Don't initialize Vtemp_file_name_pattern here.
  -     (Fcall_process_region): Simplify temp file creation using
  -     temporary-file-directory.
  -
  -2009-01-29  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * msdos.c: Rename pending_signals to msdos_pending_signals.
  -     (sig_suspender, sigprocmask): Adjust.
  -
  -2009-01-29  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * keyboard.c (pending_signals): New var.
  -     (poll_for_input, input_available_signal, init_keyboard): Set it.
  -     (process_pending_signals): New function.
  -
  -     * lisp.h (QUIT): Check pending_signals instead of
  -     interrupt_input_pending.  Use process_pending_signals.
  -
  -     * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
  -
  -     * process.c (wait_reading_process_output): Use process_pending_signals.
  -
  -     * sysdep.c (emacs_write): Use process_pending_signals.
  -
  -     * xterm.c (XTread_socket): Update pending_signals.
  -
  -     * w32term.c (w32_read_socket): Update pending_signals.
  -
  -     * w32inevt.c (w32_console_read_socket): Update pending_signals.
  -
  -2009-01-29  Kenichi Handa  <handa@m17n.org>
  -
  -     * xftfont.c (xftfont_has_char): New function.
  -     (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
  -
  -2009-01-29  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
  -     under GNUstep.
  -     (ns_query_color): New declaration.
  -
  -     * nsterm.m (ns_confirm_quit): New variable.
  -     (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
  -     (EmacsApp-applicationShouldTerminate:): Use it.
  -     (EmacsPrefsController): Let user set it.
  -     (ns_query_color): New function.
  -     (ns_defined_color): Use it.
  -     (ns_initialize): Drop.
  -     (ns_term_init): Add two lines from ns_initialize(), and set
  -     input_interrupt_mode to nil.
  -
  -     * image.c (svg_load_image): Don't right-shift background RGB when
  -     obtained from FRAME_BACKGROUND_PIXEL.  Under HAVE_NS use ns_query_color.
  -
  -2009-01-28  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
  -     (fontset_get_font_group): Remember that no font-group is specified
  -     for C.
  -
  -2009-01-27  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * fns.c (concat): Check for string overflow (bug#1787).
  -
  -     * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
  -     Quadruple undo limits (bug#1501).
  -
  -2009-01-27  Kenichi Handa  <handa@m17n.org>
  -
  -     * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
  -     directly use GT_Get_Char_index.
  -
  -     * xftfont.c (struct xftfont_info): New member `index'.
  -
  -     * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
  -     (Ffontset_font): Adjust for the change of fontset entry.
  -
  -2009-01-26  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (fontset_find_font): Fix handling of non-cons return
  -     value of fontset_get_font_group.
  -     (fontset_font): Revert last change.
  -
  -2009-01-26  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (w32font_list_internal): Return quickly if registry is
  -     unknown.  Simplify final return.
  -     (add_font_entity_to_list): Break complex logic down into more
  -     manageable chunks.  Move unknown registry check to
  -     w32font_list_internal.
  -
  -2009-01-25  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     Changes to remove Feval calls from GUI under NS.
  -
  -     * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
  -     Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
  -     Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
  -
  -     * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
  -     (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
  -     (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
  -     instead of NON_ASCII_KEYSTROKE_EVENT.
  -     (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
  -     (EmacsApp-applicationShouldTerminate:): Query user.
  -     (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
  -     instead of Feval.
  -
  -     * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
  -
  -     * keyboard.c (kbd_buffer_get_event): Check for it.
  -     (keys_of_keyboard): Define lispy keys for
  -     ns-put/unput-working-text.
  -
  -     * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
  -     versions.
  -     (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
  -
  -2009-01-25  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
  -     setting current_buffer directly.  (Bug#2044)
  -
  -2009-01-24  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * fontset.c (fontset_font): If we know there is no font, don't do
  -     any work.  (Bug#1952, bug#1990).
  -
  -     * font.c (font_parse_xlfd): Handle patterns of length < 2.  (Bug#1802)
  -
  -2009-01-23  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * emacs.c (main): Do fork+exec under --daemon in Cocoa.
  -     (ns_no_defaults): New declaration.
  -     (main): Use it.
  -
  -     * nsterm.h (ns_no_defaults): New declaration.
  -
  -     * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
  -
  -     * nsterm.m (ns_no_defaults): New variable.
  -     (ns_initialize): Don't read defaults when ns_no_defaults.
  -     (EmacsView-readSelectionFromPasteboard:)
  -     (writeSelectionToPasteboard:types:): New stubbed-out methods for
  -     NSServicesRequests protocol.  (Bug#1435)
  -     (ns_dumpglyphs_stretch): New function.
  -     (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
  -     of 2008-11-15 to other terms.  (Bug#615)
  -
  -     * nsimage.m (setPixmapData:): Set to ignore image DPI.
  -
  -2009-01-23  Giorgos Keramidas  <keramida@freebsd.org>  (tiny change)
  -
  -     * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
  -     call for Sparc64.
  -
  -2009-01-22  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsfns.m:
  -     * nsgui.h:
  -     * nsmenu.m:
  -     * nsselect.m:
  -     * nsterm.h:
  -     * nsterm.m: Remove '23' comments that indicated code added during
  -     update from emacs-20 -> emacs-23.
  -
  -2009-01-22  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
  -     ns_alternate_modifier.  (Bug#1217)
  -
  -     * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
  -     Display all shortcuts, including those w/o super modifier.
  -
  -     * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
  -
  -2009-01-22  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * fileio.c (Vwrite_region_post_annotation_function)
  -     (Vwrite_region_annotation_buffers): New vars.
  -     (build_annotations_unwind): Just reset
  -     Vwrite_region_annotation_buffers.
  -     (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
  -     Call write-region-post-annotation-function.
  -     (build_annotations): Add to Vwrite_region_annotation_buffers if
  -     buffer changes.
  -
  -2009-01-21  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
  -     Tiger.
  -     * nsfns.m (ns_do_applescript):
  -     Conditionalize typeUTF16ExternalRepresentation on Tiger.
  -
  -2009-01-21  Wolfgang Lux  <wolfgang.lux@gmail.com>  (tiny change)
  -
  -     * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
  -
  -2009-01-21  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsmenu.m (NSMENUPROFILE): Change #if style.
  -
  -     * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
  -
  -     * nsterm.m (x_set_frame_alpha): Add prototype.
  -     (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
  -     handle Ctrl-tab.  (Bug#1841)
  -     (ns_get_color): Use unsigned long long for scanned hex string value.
  -     (ns_term_shutdown): Abort on non SIGTERM signals.
  -     (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
  -     (EmacsPrefsController-setPanelFromDefaultValues): New function.
  -     (EmacsPrefsController-resetToDefaults:): Use it.  (Bug#1801)
  -     (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
  -     (ns_defined_color): Fix settings of the XColor variable fields:
  -     red,green,blue scale to 2-byte, pixel's parts to 1-byte.  (Bug#1663)
  -
  -     * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
  -     DPI.  (Bug#1316)
  -     (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
  -     values in onTiger section.
  -
  -2009-01-19  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
  -     Check return value of font_spec_from_name.
  -     (Fx_list_fonts): Doc fix.  (Bug#1951)
  -
  -     * font.c (font_spec_from_name): Return Qnil if font name could not
  -     be parsed.
  -     (font_parse_name): Treat a `?' character as part of an XLFD.
  -
  -     * fns.c (Fsubstring): Doc fix.
  -
  -2009-01-19  Kenichi Handa  <handa@m17n.org>
  -
  -     * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
  -     (ftfont_list): Likewise.
  -
  -2009-01-18  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * dbusbind.c (Fdbus_register_signal):
  -     * process.c (conv_sockaddr_to_lisp):
  -     * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
  -
  -     * callproc.c (Fgetenv_internal): Doc fix.
  -
  -2009-01-16  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
  -     it is not even used.
  -
  -2009-01-16  Glenn Morris  <rgm@gnu.org>
  -
  -     * font.c (Ffont_variation_glyphs): Silence compiler.
  -
  -2009-01-15  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
  -     Reported by David Robinow <drobinow@gmail.com>.
  -
  -2009-01-15  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (detect_coding_system): Fix handling of null_byte_found.
  -
  -2009-01-14  Jason Rumney  <jasonr@gnu.org>
  -
  -     * frame.c (x_set_font): Always store a font to the font parameter,
  -     never a fontset.  (Bug#1562)
  -
  -2009-01-14  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (TWO_MORE_BYTES): New macro.
  -     (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
  -
  -2009-01-13  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * font.c (font_clear_prop): If clearing the family, clear the font
  -     width index too.
  -
  -     * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
  -
  -2009-01-12  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
  -     (do_play_sound): Use it.  Don't pass a hardcoded buffer size to mci
  -     functions, use sizeof.
  -
  -2009-01-12  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * keyboard.c (read_char): Fix case where last_nonmenu_event
  -     returned a bad value with submenus.  (Bug#447)
  -
  -2009-01-12  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
  -     family, clear the font width index too.
  -
  -2009-01-11  Jason Rumney  <jasonr@gnu.org>
  -
  -     * keyboard.c (cmd_error_internal): Exit when errors occur before
  -     frame creation and not in daemon mode.  (Bug#1836)
  -
  -2009-01-10  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (pos_visible_p): When iterator stops on the last glyph
  -     of a display vector, backtrack.
  -     (try_window_reusing_current_matrix): Check glyph type before
  -     referencing charpos member.
  -
  -2009-01-10  Eli Zaretskii  <eliz@gnu.org>
  -
  -     Fix Bug #876:
  -
  -     * coding.c (inhibit_null_byte_detection): New variable.
  -     (detect_coding, detect_coding_system): Don't pay attention to null
  -     bytes if inhibit_null_byte_detection is non-zero.
  -     (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
  -     <inhibit-iso-escape-detection>: Doc fix.
  -
  -2009-01-09  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (add_font_entity_to_list): Don't report unknown
  -     Windows charset as any unrecognized registry.  (Bug#1548)
  -     Only report Unicode Plane 2 fonts as unicode-sip.
  -
  -2009-01-09  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xfaces.c (Fx_font_family_list): Delete function.
  -     Move compatibility version to faces.el.
  -
  -     * font.c (Ffont_family_list): Return a list of strings, not symbols.
  -
  -2009-01-09  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * frame.c (x_set_frame_parameters): Remember requested value for
  -     fullscreen before it's reset by the parameter handler.
  -
  -2009-01-09  Glenn Morris  <rgm@gnu.org>
  -
  -     * keyboard.c (last_command_char): For clarity, rename to...
  -     (last_command_event): ... and update all users.
  -     (last_input_char): For clarity, rename to...
  -     (last_input_event): ... and update all users.
  -     (last-command-char, last-input-char): Move to subr.el as aliases.
  -     * cmds.c, commands.h: Update for last_command_char rename.
  -
  -2009-01-08  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * font.c (font_open_for_lface): Handle unspecified height attribute.
  -
  -2009-01-08  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
  -     (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
  -     (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
  -     Don't declare.
  -     (syms_of_w32fns): Don't define x-pointer-shape variable.  (Bug#1485)
  -     (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
  -
  -2009-01-07  Kenichi Handa  <handa@m17n.org>
  -
  -     * fileio.c (Finsert_file_contents): In the case of replace,
  -     remember the coding system used for decoding in
  -     coding_system (Bug#1039).
  -
  -     * coding.c (decode_coding_utf_8): Check byte_after_cr before
  -     breaking the loop.  (Bug#870)
  -     (decode_coding_utf_16, decode_coding_emacs_mule)
  -     (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
  -     (decode_coding_charset): Likewise.
  -
  -2009-01-05  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * frame.c (x_set_frame_parameters): Make sure height (width) get
  -     applied when fullwidth (fullheight) is set.  (Bug#1522)
  -
  -2009-01-04  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * w32.c: Use 64-bit arithmetic to do FILETIME conversions.  (Bug#1766)
  -     (utc_base): Declare as ULONGLONG, not long double.
  -     (convert_time_raw): Delete.
  -     (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
  -     (initialize_utc_base): New function.
  -     (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
  -     (convert_from_time_t): Use initialize_utc_base; compute result with
  -     64-bit arithmetic.
  -     (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
  -
  -2009-01-03  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
  -     (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
  -     (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
  -     (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
  -     [!subprocesses]: Define.
  -     (syms_of_process) [!subprocesses]: Intern and staticpro them.
  -     (Flist_system_processes, Fsystem_process_attributes)
  -     [!subprocesses]: Call list_system_processes and
  -     system_process_attributes instead of returning Qnil.
  -
  -     * dosfns.c (system_process_attributes, list_system_processes):
  -     New functions.
  -
  -     * vm-limit.c (ret_lim_data) [MSDOS]: New function.
  -
  -     * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
  -     Don't use the default (no-op) implementation.
  -
  -2009-01-03  Jason Rumney  <jasonr@gnu.org>
  -
  -     * keyboard.c (parse_modifiers_uncached): Wheel events are
  -     clicks (bug#687).
  -
  -     * w32term.c (x_query_colors, x_query_color): New functions.
  -
  -     * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
  -     (svg_load_image): Cast returned pointers from dynamically loaded
  -     functions.  Eliminate W32 specific code.
  -
  -2009-01-02  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * nsfns.m (x_set_foreground_color, x_set_background_color)
  -     (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
  -     (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
  -     x_ prefix instead of ns_.  Update references.
  -     (syms_of_nsfns): Add a FIXME comment.
  -
  -     * nsterm.m (x_set_cursor_type): New prototype.
  -     (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
  -
  -     * sysdep.c (system_process_attributes): Provide Qtime and Qctime
  -     for Solaris instead of incorrectly providing Qutime and Qcutime.
  -
  -2009-01-02  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * w32.c (process_times): Compute sum of utime and stime.
  -     (system_process_attributes): Add Qtime to the alist.
  -
  -     * sysdep.c (system_process_attributes): Compute Qtime and Qctime
  -     and add them to the alist.
  -
  -     * process.c (top level) <Qtime, Qctime>: New variables.
  -     (syms_of_process): staticpro them.
  -     (Fsystem_process_attributes): Add their documentation to the doc
  -     string.
  -
  -     * process.h: Declare Qtime and Qctime.
  -
  -2009-01-02  Jason Rumney  <jasonr@gnu.org>
  -
  -     * image.c (Qgobject): New symbol.
  -     (syms_of_image): Initialize it.
  -     (init_svg_functions): Load some functions from gobject library.
  -
  -2009-01-01  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * frame.c (make_terminal_frame): Remove redundant code and useless
  -     block.
  -
  -2009-01-01  Andreas Schwab  <schwab@suse.de>
  -
  -     * process.c (conv_sockaddr_to_lisp): Add workaround for
  -     getsockname bug on BSD.
  -
  -2009-01-01  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xfns.c (x_create_tip_frame): Set border width of the X window.
  -
  -     * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
  -
  -2009-01-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32term.c (x_new_font): Return font object, not fontset.  (Bug#119)
  -     Don't block input, as per earlier xterm.c changes.
  -
  -2008-12-31  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
  -     (ns_appkit_version_int): New function.
  -     (x-server-version): Use ns_appkit_version_int and follow 21+
  -     convention of returning 3 integers.
  -
  -2008-12-30  Kenichi Handa  <handa@m17n.org>
  -
  -     * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
  -     (CHAR_SURROGATE_PAIR_P): New macro.
  -
  -     * font.h (struct font_driver): New member get_variation_glyphs.
  -
  -     * font.c (font_range): Don't require a font for a variation selector.
  -     (Ffont_variation_glyphs): New function.
  -     (syms_of_font): Defsubr it.
  -
  -     * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
  -     ftfont_variation_glyphs.
  -     (setup_otf_gstring): New function.
  -     (ftfont_drive_otf): Use it.
  -     (ftfont_shape_by_flt): Handle variation selector.
  -     (ftfont_variation_glyphs): New function.
  -
  -2008-12-30  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * frame.c (Vemacs_iconified): Remove.
  -
  -2008-12-30  Jason Rumney  <jasonr@gnu.org>
  -
  -     * frame.c (store_frame_param, x_get_arg): Enable newer code on
  -     WINDOWSNT too, as related changes have already been synced.  (Bug#117)
  -
  -2008-12-30  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * indent.c (Fvertical_motion): Don't advance iterator if we have
  -     reseated to the desired position.
  -
  -     * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
  -     checking for pos match.
  -
  -2008-12-30  Kenichi Handa  <handa@m17n.org>
  -
  -     * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
  -     just get the low 8-bit of the code.
  -
  -     * font.c (font_intern_prop): Validate str as multibyte.
  -
  -2008-12-29  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * dispextern.h (struct face): Move lface and hash from the middle
  -     of bitfields.
  -
  -     * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
  -
  -2008-12-29  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
  -     (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
  -     instead of intervals.h.
  -
  -2008-12-26  Andreas Schwab  <schwab@suse.de>
  -
  -     * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
  -     cons.
  -
  -2008-12-26  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * textprop.c (Qminibuffer_prompt): New variable.
  -     (syms_of_textprop): Initialize it.
  -     * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
  -     in minibuffer-prompt face.  (Bug#1662)
  -
  -2008-12-25  Jason Rumney  <jasonr@gnu.org>
  -
  -     * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
  -
  -2008-12-24  Jason Rumney  <jasonr@gnu.org>
  -
  -     * ralloc.c (r_alloc_reset_variable): New function.
  -
  -     * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
  -     record of what points where.  (Bug#716)
  -
  -2008-12-22  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * minibuf.c (read_minibuf): Follow the non-interactive case when
  -     running as a daemon, before detaching.
  -
  -2008-12-22  Andreas Schwab  <schwab@suse.de>
  -
  -     * buffer.c (init_buffer): Use realloc instead of xrealloc.
  -     * gtkutil.c (free_widget_value): Use xfree instead of free.
  -
  -2008-12-22  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * frame.c (delete_frame): New function derived from
  -     Fdelete_frame to handle Qnoelisp value for FORCE argument.
  -     Delete last frame iff FORCE equals Qnoelisp.  (Bug#1450)
  -     (Fdelete_frame): Call delete_frame.  Remove line from doc-string
  -     saying that FORCE non-nil doesn't run `delete-frame-functions'.
  -     * frame.h: Extern delete_frame.
  -     * window.c (window_loop):
  -     * terminal.c (delete_terminal):
  -     * xterm.c (x_connection_closed):
  -     * xfns.c (Fx_hide_tip):
  -     * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
  -
  -2008-12-21  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
  -     when character maps to .notdef character.
  -
  -2008-12-21  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
  -
  -2008-12-20  Jason Rumney  <jasonr@gnu.org>
  -
  -     * frame.c (Fmake_terminal_frame): Raise an error when called from
  -     a graphical frame on Windows.  (Bug#1325)
  -
  -2008-12-20  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
  -
  -2008-12-20  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * minibuf.c (Fread_buffer): Doc fix.
  -
  -2008-12-20  Jason Rumney  <jasonr@gnu.org>
  -
  -     * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
  -     server name in UNC paths.  (Bug#719)
  -
  -     * coding.c (decode_coding): Clear chars_at_source flag when using
  -     charbuf.  (Bug#1035)
  -
  -2008-12-19  Daniel Engeler  <engeler@gmail.com>
  -
  -     * sysdep.c (serial_configure): Fix typo.
  -
  -2008-12-19  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * sysdep.c: Include alloca.h.
  -     (system_process_attributes): Add implementation for Solaris.
  -
  -     * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
  -
  -2008-12-19  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     Reorganize implementation of Flist_system_processes and
  -     Fsystem_process_attributes.  No functional changes.
  -     * process.c: Don't #include pwd.h, grp.h and limits.h.
  -     (Flist_system_processes): Just call list_system_processes.
  -     (Fsystem_process_attributes): Just call system_process_attributes.
  -     (procfs_list_system_processes, time_from_jiffies)
  -     (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
  -     (procfs_get_total_memory, procfs_system_process_attributes): Move ...
  -
  -     * sysdep.c: ... here.  Include pwd.h, grp.h and limits.h.
  -     (list_system_processes): Rename from
  -     procfs_list_system_processes.  Enclose in #ifdef HAVE_PROCFS.
  -     Provide a do nothing implementation.
  -     (system_process_attributes): Rename from
  -     procfs_list_system_processes.
  -     (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
  -     (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
  -
  -     * w32.c (list_system_processes): Rename from
  -     w32_list_system_processes.
  -     (system_process_attributes): Rename from
  -     w32_system_process_attributes.
  -
  -     * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
  -
  -     * process.h (w32_list_system_processes)
  -     (w32_system_process_attributes): Remove.
  -     (list_system_processes, system_process_attributes):
  -     New prototypes.
  -
  -2008-12-19  Kenichi Handa  <handa@m17n.org>
  -
  -     * xfont.c (xfont_decode_coding_xlfd): New function.
  -     (xfont_encode_coding_xlfd): New function.
  -     (xfont_list_pattern): Decode XLFD by iso-8859-1.
  -     (xfont_list): Decode and encode XLFD by iso-8859-1.
  -     (xfont_match): Likewise.
  -     (xfont_list_family): Likewise.
  -     (xfont_open): Likewise.
  -
  -     * ftfont.c (ftfont_open): Generate a multibyte string if given
  -     names are utf-8.
  -
  -     * xftfont.c (xftfont_open): Generate a multibyte string if given
  -     names are utf-8.
  -
  -2008-12-18  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
  -     changed.
  -     (xg_tool_bar_proxy_callback): Put focus on the frame after we have
  -     clicked on a detached tool bar button.
  -
  -2008-12-18  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * emacs.c (main): Print and error and exit when no data is read
  -     from the pipe.
  -
  -2008-12-17  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (w32font_has_char): Always return -1.
  -
  -2008-12-16  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_open_entity): Fix previous change.
  -
  -2008-12-16  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * process.c: Include <limits.h>.
  -
  -2008-12-16  Chetan Pandya  <pandyacus@sbcglobal.net>  (tiny change)
  -
  -     * font.c (font_update_drivers): Fix mistake in reconstructing the
  -     driver list.
  -
  -2008-12-16  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * font.c (font_clear_cache): Fix format of font cache data.
  -
  -2008-12-15  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xftfont.c (xftfont_open): Free Xft font pattern if
  -     XftFontOpenPattern fails.
  -
  -     * xterm.c (x_free_frame_resources): Remove extraneous call to
  -     free_frame_faces.
  -
  -2008-12-13  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xterm.c (x_delete_display): Move xim_close_dpy call to
  -     x_delete_terminal.
  -     (x_delete_terminal): Call xim_close_dpy.
  -
  -2008-12-13  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (intern_font_name): New function.
  -     (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
  -     (w32font_open_internal, Fx_select_font): Decode font name.
  -     (fill_in_logfont, list_all_matching_fonts): Encode font name.
  -
  -     * w32font.h (intern_font_name): Declare new function.
  -
  -     * w32uniscribe.c (add_opentype_font_name_to_list):
  -     Use intern_font_name.
  -
  -2008-12-13  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * frame.c (Fdelete_frame): Call free_font_driver_list.
  -
  -     * font.c (free_font_driver_list): Implement missing function.
  -
  -     * w32term.c (w32_term_init): Don't initialize the image cache
  -     here; it will be done in init_frame_faces.
  -
  -     * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
  -     (struct x_display_info): Remove unused member null_pixel.  New
  -     member xim_callback_data.
  -
  -     * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
  -     (xim_initialize): Save pointer to callback function data.
  -     (xim_close_dpy): Free callback function data.  Call XCloseIM,
  -     reverting 2008-11-04 change by David Smith.
  -     (x_term_init): Don't initialize the image cache here; it will be
  -     done in init_frame_faces.  Remove ancient "null_pixel" cruft.
  -     (x_delete_display): Free x_dnd_atoms member.
  -
  -2008-12-13  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_rescale_ratio): Moved from xfaces.c.
  -     Argument type changed.  Handle a font-spec too.
  -     (font_score): Check Vface_font_rescale_alist.
  -     (font_open_entity): Likewise.  (Bug#1547)
  -
  -     * xfaces.c (font_rescale_ratio): Moved to font.c.
  -
  -2008-12-13  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
  -
  -2008-12-12  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
  -     Vwindow_system_version to the real w32 major version.
  -
  -2008-12-12  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * term.c (init_tty): Move setting the terminal name before the
  -     potential user: maybe_fatal.
  -
  -2008-12-11  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
  -     all callers changed.  Call free_frame_faces to free the face cache.
  -
  -2008-12-11  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (fill_in_logfont): Don't assume symbol script means
  -     SYMBOL_CHARSET.  (Bug#547)
  -
  -     * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
  -     size for surrogates.  (Bug#1096, bug#872)
  -
  -2008-12-11  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
  -
  -2008-12-11  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * process.c (Fsystem_process_attributes, syms_of_process):
  -     Fix typo in name of Ssystem_process_attributes.
  -     Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
  -
  -2008-12-11  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * syntax.c (Fmodify_syntax_entry): Doc fix.
  -
  -2008-12-10  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * font.c (Ffont_spec): Move usage to end of docstring.
  -
  -2008-12-10  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (Qcham): New symbol.
  -     (font_supported_scripts): Add cham, and comments for other new
  -     scripts in bitfield from OpenType spec.
  -     (add_font_entity_to_list): Limit unicode-sip fonts to those that
  -     contain characters beyond the bmp.
  -
  -2008-12-10  Kenichi Handa  <handa@m17n.org>
  -
  -     * ftfont.c (fc_charset_table): Add "unicode-sip".
  -     (ftfont_spec_pattern): Lookup fc_charset_table for the registry
  -     Qunicode_sip.
  -
  -2008-12-10  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * coding.c (QCdefault_char): Rename from QCdefalut_char.
  -     (Fcoding_system_put): Use QCdefault_char.
  -     (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
  -
  -2008-12-09  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xftfont.c (syms_of_xftfont): Fix typo.
  -
  -     * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
  -
  -2008-12-08  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * emacs.c (main): Close daemon_pipe on exec.
  -
  -2008-12-08  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * termchar.h (struct tty): New members termcap_term_buffer and
  -     termcap_strings_buffer.
  -
  -     * term.c (encode_terminal_code): Free any previous memory blocks
  -     before calling xmalloc for encode_terminal_src or encode_terminal_dst.
  -     (maybe_fatal): Buffer argument deleted.  Don't free buffer here.
  -     All callers changed.
  -     (init_tty): Store termcap data and string buffers in new struct
  -     tty members termcap_term_buffer and termcap_strings_buffer.
  -     (delete_tty): Free them.
  -     (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
  -
  -2008-12-07  Seiji Zenitani  <zenitani@mac.com>
  -
  -     * nsfns.m (ns_set_background_color): Remove code duplication.
  -     It was a substitute for face-transparency on OS X 10.3.
  -
  -2008-12-06  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * coding.c (make_conversion_work_buffer): Disable buffer
  -     modification hooks in the work buffer.
  -
  -2008-12-05  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * process.c (procfs_system_process_attributes): If `nread' has a
  -     negative value, assign zero to it.
  -
  -2008-12-05  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * eval.c (Vdebug_on_error): Doc fix.
  -
  -2008-12-05  Kenichi Handa  <handa@m17n.org>
  -
  -     * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
  -     second character is a combining character.
  -
  -2008-12-05  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * process.c (procfs_system_process_attributes): Don't use cmd,
  -     cmdsize, and q without initializing them first.
  -
  -2008-12-04  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (w32font_draw): Initialize orig_clip before getting
  -     it, and delete it when finished.
  -
  -2008-12-04  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
  -     case when running as a daemon before detaching.
  -
  -2008-12-03  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * w32.c (init_environment): Don't unload library shell32.dll.
  -
  -2008-12-03  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_at): Set `multibyte' at first.
  -
  -     * coding.c (decode_coding_charset): Check type of an element of
  -     vector VALIDS.
  -     (encode_coding_emacs_mule): Be sure to set `code'.
  -
  -     * fontset.c (face_for_char): Handle invalid charset property correctly.
  -     (font_for_char): Likewise.
  -
  -2008-12-03  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * font.c (Fopen_font): Compute pixel size correctly.
  -     (font_update_lface): Handle fonts with corrupted size specs,
  -     i.e. non-int and non-float.
  -
  -     * ftfont.c (ftfont_match): Initialize entity variable.
  -     (ftfont_resolve_generic_family): Avoid using uninitialized var.
  -     (ftfont_list_family): Initialize list var earlier.
  -
  -     * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
  -
  -     * xterm.c (x_draw_glyph_string): Fall back on
  -     underline_minimum_offset for underline position.
  -
  -2008-12-03  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
  -
  -     * character.c (c_string_width): Specify the type for LEN.
  -
  -2008-12-03  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
  -     (decode_coding_utf_8): Likewise.
  -     (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
  -     (produce_chars): Initialize consumed_chars to 0.
  -
  -2008-12-02  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * keyboard.c (make_lispy_position): Only use PT if the selected
  -     window is current.
  -
  -2008-12-02  Andreas Schwab  <schwab@suse.de>
  -
  -     * font.c (font_unparse_fcname): Fix use of uninitialized variable.
  -
  -     * doprnt.c (doprnt1): Fix size of charbuf.
  -
  -2008-12-02  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * keyboard.c (timer_check): Revert last change.
  -
  -2008-12-02  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
  -
  -2008-12-01  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * makefile.w32-in: Update dependencies.
  -     (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
  -
  -2008-12-01  Andreas Schwab  <schwab@suse.de>
  -
  -     * font.c (register_font_driver): Use xmalloc.
  -     (font_put_frame_data): Likewise.
  -
  -2008-12-01  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xfaces.c (realize_x_face): Make abort condition clearer.
  -
  -     * gtkutil.c (update_frame_tool_bar): Initialize variable.
  -
  -2008-11-30  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * keyboard.c (timer_check): After a timer runs, ensure that the
  -     selected window's buffer is current.
  -
  -2008-11-30  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
  -     It was accidentally restored by the Unicode merge.
  -
  -     * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
  -
  -2008-11-29  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * w32proc.c: Include "coding.h".
  -     (Fw32_short_file_name): Encode filename passed to Windows API.
  -     (Fw32_long_file_name): Encode filename passed to Windows API and
  -     decode back the result.  (Bug#1433)
  -
  -2008-11-29  Kenichi Handa  <handa@m17n.org>
  -
  -     * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
  -     not before accessing it.
  -
  -     * charset.c (Fdefine_charset_internal): After calculating
  -     min_char, max_char, and fastmap, copy the charset structure again.
  -     (encode_char): Fix the previous change.
  -
  -2008-11-28  Seiji Zenitani  <zenitani@mac.com>
  -
  -     * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
  -
  -     * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
  -
  -     * nsterm.m (x_set_frame_alpha): New function.
  -
  -2008-11-27  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
  -
  -2008-11-27  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
  -     pointer to check_face_name.
  -
  -2008-11-27  Kenichi Handa  <handa@m17n.org>
  -
  -     * category.h (SET_CATEGORY_SET): Call set_category_set.
  -     (set_category_set): Extern it.
  -
  -     * category.c (hash_get_category_set): New function.
  -     (Fmodify_category_entry): Adjusted for the change of
  -     char_table_ref_and_range.  Call hash_get_category_set to get a
  -     category set to store in the table.
  -
  -     * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
  -     Funify_charset.
  -
  -     * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
  -     (DECODE_CHAR): Check if the decoder vector is ready.
  -     (ENCODE_CHAR): Check if the encoder char-table is ready.
  -     (maybe_unify_char): Extern it.
  -
  -     * charset.c (Vchar_unified_charset_table): Delete it.
  -     (inhibit_load_charset_map): New variable.
  -     (temp_charset_work): New variable.
  -     (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
  -     (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
  -     New macros.
  -     (load_charset_map): Meaning of control_flag changed.  If
  -     inhibit_load_charset_map is nonzero, setup a table in
  -     temp_charset_work.
  -     (load_charset): New argument control_flag.
  -     (map_charset_for_dump): New function.
  -     (map_charset_chars): If inhibit_load_charset_map is nonzero, use
  -     map_charset_for_dump.
  -     (Fdefine_charset_internal): If the charset method is MAP, load
  -     mapping tables by calling load_charset.
  -     (Funify_charset): Don't load a mapping table but directly set
  -     Vchar_unify_table.
  -     (maybe_unify_char): New function.
  -     (decode_char): Don't handle the deleted method MAP_DEFERRED.
  -     Handle the case of inhibit_load_charset_map being nonzero.
  -     (encode_char): Don't handle the deleted method MAP_DEFERRED.
  -     Handle the case of inhibit_load_charset_map being nonzero.
  -     (Fclear_charset_maps): Just free temp_charset_work.
  -     (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
  -     variable.
  -
  -     * chartab.c (sub_char_table_ref_and_range): Adjusted for the
  -     change of char_table_ref_and_range.
  -     (char_table_ref_and_range): Change the meaning of argument FROM
  -     and TO.  Now the caller must provide initial values for *FROM
  -     and *TO.
  -
  -     * fontset.c (fontset_add): Adjusted for the change of
  -     char_table_ref_and_range.
  -     (fontset_get_font_group): Likewise.
  -     (Ffontset_info): Likewise.
  -
  -     * keymap.c (describe_vector): Adjusted for the change of
  -     char_table_ref_and_range.  For char-table, put boundary between
  -     non-ASCII and 8-bit characters.
  -
  -     * print.c (print_object): For bool-vector, delete unnecessary
  -     check of ASCII_BYTE_P.
  -
  -2008-11-26  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (w32font_open_internal): Don't include external
  -     leading in font height.  (Bug#879)
  -
  -2008-11-26  Glenn Morris  <rgm@gnu.org>
  -
  -     * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
  -     redefinition with ifdef.  (Bug#1383)
  -
  -2008-11-24  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
  -
  -2008-11-24  Wolfgang Lux  <wolfgang.lux@gmail.com>  (tiny change)
  -
  -     * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
  -     New EmacsView methods.
  -     (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
  -     Fixes bug #1048,1357,1414.
  -
  -2008-11-24  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     Fix bug #1362.
  -     * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
  -     is not an indexed color.
  -     * nsterm.m (free_indexed_color): Add argument checking.
  -     * nsfns.m: Move config.h to before system includes (advised by Dan N.).
  -
  -2008-11-24  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
  -     Document confirm-after-completion value for
  -     minibuffer-completion-confirm.
  -
  -2008-11-24  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (check_face_name): Use xstrcasecmp.  Avoid compiler
  -     warning.
  -
  -2008-11-23  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32uniscribe.c (uniscribe_encode_char): Ensure context is
  -     restored before returning.
  -
  -     * w32font.c (check_face_name): New function.
  -     (add_font_entity_to_list): Use it to filter out common substituted
  -     fonts.  (Bug#642)
  -
  -2008-11-22  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * buffer.c (Fswitch_to_buffer): Reword and mention new option
  -     confirm-nonexistent-file-or-buffer in doc-string.
  -
  -2008-11-21  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
  -     Fix copy/paste typo.  Add checks.
  -
  -2008-11-21  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (detect_coding_iso_2022): Reject invalid composition
  -     sequence.
  -     (DECODE_COMPOSITION_START): If the current source is the last
  -     block, and the current composition doesn't end, regard this
  -     sequence as invalid.
  -     (decode_coding_iso_2022): Handle invalid composition sequence.
  -
  -2008-11-20  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * window.c (coordinates_in_window): Don't return
  -     ON_VERTICAL_BORDER for the rightmost position of a mode/header
  -     line when the window is not the rightmost one.  (Bug#1372)
  -
  -2008-11-16  Ben North  <ben@redfrontdoor.org>  (tiny change)
  -
  -     * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
  -
  -2008-11-15  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
  -     and bright_bg if noninteractive is non-zero.
  -
  -2008-11-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
  -     x_draw_glyph_string_background.
  -
  -     * w32term.c (x_draw_glyph_string): Likewise.
  -
  -2008-11-15  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xterm.c (x_draw_glyph_string): Stop drawing the background of
  -     the next glyph string once past the overhang width.
  -
  -     * nsterm.m (ns_draw_glyph_string): Likewise.
  -
  -     * w32term.c (x_draw_glyph_string): Likewise.
  -
  -2008-11-14  Fabrice Popineau  <fabrice.popineau@supelec.fr>  (tiny change)
  -
  -     * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
  -     double file close.
  -
  -2008-11-14  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
  -     dedicated status of window before attempting to display another
  -     buffer in it.
  -
  -2008-11-14  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * msdos.c (Fmsdos_long_file_names):
  -     (syms_of_msdos) <dos-unsupported-char-glyph>:
  -     * dosfns.c (Fint86): Fix typos in docstrings.
  -
  -2008-11-14  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
  -
  -2008-11-14  Katsumi Yamaoka  <yamaoka@jpl.org>
  -
  -     * puresize.h (BASE_PURESIZE): Increase to 1260000.
  -
  -2008-11-12  Michal Nazarewicz  <mina86@tlen.pl>  (tiny change)
  -
  -     * frame.c (x_set_alpha): Set alpha to -1 if nil given.
  -
  -     * frame.h: Negative alpha means "don't touch".
  -
  -     * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
  -
  -     * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
  -
  -2008-11-12  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * hftctl.c:
  -     * chpdef.h:
  -     * acldef.h: Remove files used only for systems no longer supported.
  -
  -     * Makefile.in: Fix .o alphabetical ordering.
  -     (hftctl.o): Remove dependency, file removed.
  -     (keymap.o, print.o): Depend on charset.h.
  -
  -2008-11-10  Kenichi Handa  <handa@m17n.org>
  -
  -     * character.c (Fget_byte): Fix and make it faster for unibyte target.
  -
  -2008-11-08  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * dired.c (file_name_completion): If completion_ignore_case is
  -     enabled, ignore case when checking completion-regexp-list.
  -
  -2008-11-08  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * vm-limit.c (get_lim_data): Fix last change.
  -
  -2008-11-08  Kenichi Handa  <handa@m17n.org>
  -
  -     * character.c (Fget_byte): New function.
  -     (syms_of_character): Defsubr Fget_byte.
  -
  -2008-11-07  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (try_window_reusing_current_matrix): Ensure that window
  -     cursor position is valid after scrolling.
  -
  -2008-11-06  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
  -
  -2008-11-06  Glenn Morris  <rgm@gnu.org>
  -
  -     * xterm.c (handle_one_xevent): Don't let popup menus cause
  -     mouse-autoselect-window related window switching.  (Bug#1261)
  -
  -2008-11-04  David Smith  <davidsmith@acm.org>  (tiny change)
  -
  -     * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
  -
  -2008-11-04  Andreas Schwab  <schwab@suse.de>
  -
  -     * xfns.c (Fx_wm_set_size_hint): Add missing return value.
  -
  -2008-11-03  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xfns.c (Fx_wm_set_size_hint): New function.
  -
  -2008-11-03  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * textprop.c (Fprevious_single_char_property_change): Return 0
  -     when there's no change in a string.  (Bug#1301)
  -
  -2008-11-02  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * frame.c (do_switch_frame): New argument NORECORD passed to
  -     Fselect_window.
  -     (Fselect_frame): New argument NORECORD passed to
  -     do_switch_frame.
  -     (Fset_frame_selected_window): New argument NORECORD passed to
  -     Fselect_frame.
  -     (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
  -     in call of do_switch_frame.
  -     (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
  -     Handle NORECORD argument in call of Fselect_frame.
  -     * lisp.h (do_switch_frame, Fselect_frame)
  -     (Fset_frame_selected_window): Adjust declarations.
  -     * window.c (select_frame_norecord): New function.
  -     (run_window_configuration_change_hook): Use it and call
  -     Fselect_frame with NORECORD set.
  -     (Fselect_window): Pass NORECORD to Fselect_frame.
  -     (Fset_window_configuration): Handle NORECORD argument in call of
  -     do_switch_frame.
  -     * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
  -     Fset_frame_selected_window.
  -     * keyboard.c (command_loop_1): Handle NORECORD in call of
  -     Fselect_frame (currently ifdefd).
  -
  -2008-11-02  Ulrich Mueller  <ulm@kph.uni-mainz.de>
  -
  -     * emacs.c (USAGE2): Untabify.
  -
  -2008-11-01  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * composite.c (fill_gstring_header): Fix copy/paste typo.
  -
  -2008-10-31  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
  -     (Fother_window): Rename argument and rewrite doc-string.
  -     (select_window_norecord): Fix return value.  (Bug#1276)
  -
  -2008-10-30  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * w32fns.c (x_create_tip_frame): Prevent default foreground color for
  -     new frames overriding foreground for tooltips.  Based on similar patch
  -     from Martin Rudalics <rudalics@gmx.at>.  (Bug#1032)
  -
  -2008-10-29  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * emacs.c (Fdaemon_initialized): Initialize nfd.
  -
  -2008-10-29  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
  -     (Fwindow_text_height): Clarify doc-strings.
  -     * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
  -     doc-string of window-scroll-functions.
  -
  -2008-10-28  Reiner Steib  <Reiner.Steib@gmx.de>
  -
  -     * category.c (syms_of_category): Fix typo in docstring.
  -
  -2008-10-28  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
  -     (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
  -     Fix typos in docstrings.
  -
  -2008-10-28  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * emacs.c (daemon_pipe): Make non-static.
  -     (IS_DAEMON): Move definition ...
  -     * lisp.h (IS_DAEMON): ... here.
  -     (daemon_pipe): Declare.
  -     (is_daemon): Remove.
  -     * dispnew.c (init_display): Use IS_DAEMON.
  -
  -2008-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
  -     (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
  -
  -     * emacs.c (is_daemon): Remove.
  -     (main): Don't set is_daemon.
  -     (IS_DAEMON): New macro.
  -     (Fdaemonp, Fdaemon_initialized): Use it.
  -     (Fdaemon_initialized): Write a char into the pipe to make sure the
  -     parent exits.
  -     (syms_of_emacs): Explicitly initialize daemon_pipe[1].
  -
  -2008-10-27  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
  -     over-sized glyph, draw it with the default glyph width.
  -
  -     * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
  -     glyph, draw it with the default glyph width.
  -
  -     * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
  -     glyph, draw it with the default glyph width.
  -
  -     * xdisp.c (try_scrolling): When computing the distance from the
  -     scroll margin to PT, try moving some distance past the window
  -     bottom before giving up.
  -
  -2008-10-27  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
  -     (Fset_window_buffer): Explain in doc-string that a window can be
  -     "strongly" dedicated to its buffer.
  -
  -2008-10-27  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * emacs.c (daemon_name): New variable.
  -     (main): Deal with --daemon=SERVER_NAME.
  -     (Fdaemonp): Return a name if one was passed to --daemon.
  -
  -2008-10-26  Romain Francoise  <romain@orebokech.com>
  -
  -     * emacs.c (daemon_pipe): New variable.
  -     (main): Create a pipe before forking, make the parent exit only after
  -     the child has closed its end of the pipe.  Move closing the
  -     descriptors ...
  -     (Fdaemon_initialized): ... here.  New function.
  -
  -2008-10-26  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
  -     the previous unoptimized table.
  -
  -     * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
  -     the distinction between non-nil and non-t value of `dedicated'.
  -
  -2008-10-25  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
  -     read_char_minibuf_menu_text is large enough to hold the menu string.
  -
  -2008-10-25  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * window.c (Fget_buffer_window, Fdelete_windows_on)
  -     (Freplace_buffer_in_windows): Make buffer argument optional and
  -     rename to buffer_or_name.
  -
  -2008-10-24  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (handle_single_display_spec, handle_display_prop):
  -     Undo 2005-05-16 change.
  -     (handle_stop): Pop iterator if it's loaded with an empty string.
  -     (get_overlay_strings_1): Don't save iterator if it's loaded with
  -     an empty string (bug#1201).
  -
  -2008-10-24  Kenichi Handa  <handa@m17n.org>
  -
  -     * ftfont.c (ftfont_otf_features): Fix previous change.
  -     (ftfont_otf_capability): Check FeatureList.FeatureCount before
  -     calling ftfont_otf_features.
  -
  -2008-10-24  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_match_p): Fix for the case that a vector of
  -     characters is in script-representative-chars.
  -
  -2008-10-24  Michael Albinus  <michael.albinus@gmx.de>
  -
  -     * dbusbind.c (xd_in_read_queued_messages): New variable.
  -     (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros.  Throw Qdbus_error.
  -     (xd_read_queued_messages): Catch Qdbus_error from the macros.
  -     (all): Replace xsignal1, xsignal2, xsignal3 by the respective
  -     macro.  (Bug#1186)
  -
  -2008-10-23  Ali Bahrami  <ali_gnu@emvision.com>  (tiny change)
  -
  -     * s/sol2-10.h: New file.
  -
  -2008-10-23  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * xdisp.c (fill_glyph_string): Fix typo in source (though the
  -     poor beast has survived 9+ years and the jump from xterm.c!).
  -
  -2008-10-23  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
  -     Reword doc-string.
  -     (Fbury_buffer): In doc-string say what happens to the buffer's window.
  -
  -2008-10-23  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * character.c (syms_of_character) <script-representative-chars>:
  -     <unicode-category-table>: Doc fixes.
  -
  -2008-10-23  Noah Friedman  <friedman@splode.com>
  -
  -     * coding.c (make_conversion_work_buffer): Check that
  -     Vcode_conversion_reused_workbuf is a live buffer, otherwise call
  -     Fget_buffer_create.
  -
  -2008-10-23  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_add_log): Check the values of extra properties.
  -
  -2008-10-22  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
  -     Reword doc-string.
  -     (Fset_window_parameter): Use NILP.
  -     (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
  -     (Frecenter): Use "selected" instead of "current" window in doc-strings.
  -
  -2008-10-22  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
  -
  -2008-10-22  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsfns.m (ns_appkit_version): New function.
  -     (x-server-version): Use it.
  -     (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
  -     (x-server-vendor): Don't check_ns().
  -
  -     * nsterm.m (syms_of_nsterm): Drop ns-version-string.
  -
  -2008-10-22  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
  -     Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
  -
  -2008-10-22  Kenichi Handa  <handa@m17n.org>
  -
  -     * syntax.c (scan_words): Call word_boundary_p instead of comparing
  -     scripts.
  -
  -     * category.c (word_boundary_p): Check scripts instead of charset.
  -     Handle nil value in word-separating-categories and
  -     word-combining-categories.
  -     (syms_of_category): Fix docstrings of word-separating-categories
  -     and word-combining-categories.
  -
  -2008-10-21  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * coding.c (Fencode_coding_region, Fdecode_coding_region)
  -     (Fdecode_coding_string, Fencode_coding_string): Doc fix.
  -
  -2008-10-21  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
  -     Rename arg "buffer" to "buffer_or_name".
  -     (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
  -     it optional.
  -     (no_switch_window): Remove since the return value is not used.
  -     (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
  -     Consider window as dedicated when Fwindow_dedicated_p returns a
  -     non-nil value.
  -     * lisp.h: Remove prototype for no_switch_window.
  -
  -2008-10-21  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * emacs.c (main): Unconditionally set PER_LINUX32 and exec
  -     temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
  -
  -2008-10-21  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (detect_coding_charset): For iso-8859-* coding systems,
  -     check Vlatin_extra_code_table.
  -
  -2008-10-20  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * fileio.c (Fset_file_modes): Doc fix.
  -
  -2008-10-19  Michael Albinus  <michael.albinus@gmx.de>
  -
  -     * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
  -     in arrays.
  -
  -2008-10-19  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
  -     Mention kill-buffer in doc-string.
  -     (Fset_window_buffer): Reinsert tem check removed in last commit.
  -     (Fenlarge_window, Fshrink_window): Have argument names and
  -     doc-string follow Elisp manual more closely.
  -
  -2008-10-18  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * fileio.c (Fset_file_modes): Doc fix.
  -
  -2008-10-18  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * window.c (Fwindow_width, Fset_window_start)
  -     (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
  -     (Fdelete_windows_on, Freplace_buffer_in_windows):
  -     Make doc-strings follow code and Elisp manual more closely.
  -     (Fwindow_dedicated_p): Make window argument optional.
  -     (Fset_window_dedicated_p): Rename argument "arg" to "flag".
  -     (Fset_window_buffer): Respect any non-nil dedicated value for
  -     window.  Rename "buffer" argument to "buffer_or_name".
  -
  -2008-10-18  Ulrich Mueller  <ulm@gentoo.org>
  -
  -     * m/sh3.h: New file, machine description for SuperH.
  -
  -2008-10-17  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * window.c (Fsplit_window): Rename arg horflag to horizontal.
  -
  -2008-10-17  Kenichi Handa  <handa@m17n.org>
  -
  -     * ftfont.c (ftfont_otf_features): Fix indexing
  -     gsub_gpos->FeatureList.Feature.  Check the validity of indices.
  -
  -2008-10-16  Magnus Henoch  <mange@freemail.hu>
  -
  -     * dbusbind.c (Fdbus_call_method): Unbreak usage line.
  -     (Fdbus_call_method_asynchronously): Ditto.
  -     This change makes C-h f display the argument list.
  -
  -2008-10-16  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * fileio.c (Fexpand_file_name): Doc fix.
  -
  -     * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
  -     of :foreground and :background equivalent to unspecified (20.x
  -     compatibility).
  -
  -2008-10-15  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * buffer.c (syms_of_buffer): Doc fix.
  -
  -2008-10-14  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_clear_prop): When clearing font width, clear the
  -     average width field too.
  -
  -2008-10-12  Andreas Schwab  <schwab@suse.de>
  -
  -     * ftfont.c (ftfont_shape_by_flt): Make static.
  -     * ftfont.h (ftfont_shape_by_flt): Don't declare.
  -
  -     * font.c: Don't include <m17n-flt.h>.
  -
  -2008-10-10  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
  -
  -2008-10-09  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
  -     away code.
  -
  -2008-10-09  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * dispnew.c (update_text_area): Avoid looping due to large glyph
  -     overhangs (bug#1070).
  -
  -2008-10-09  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (face_for_char): If face->fontset is negative, just
  -     return ascii_face.
  -
  -     * font.c (font_delete_unmatched): Fix previous change.
  -     Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
  -
  -2008-10-09  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * frame.c (Fraise_frame): On text-only terminals select frame in
  -     order to make it visible.  (Bug#1061)
  -
  -2008-10-08  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * fontset.c (fontset_find_font): Check frame validity.
  -
  -2008-10-07  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * gtkutil.c (xg_display_open): Reset default display if none exists.
  -     (xg_display_close): Allow Emacs to close all displays (bug#985).
  -
  -2008-10-06  Andreas Schwab  <schwab@suse.de>
  -
  -     * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
  -
  -2008-10-06  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
  -
  -     * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
  -
  -     * gtkutil.c (x_wm_set_size_hint): Return immediately if called
  -     during initialization.
  -
  -2008-10-04  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * xdisp.c (redisplay_internal): If frame switched, redisplay the
  -     whole thing on MSDOS frames as well as on a TTY.
  -
  -     * dispnew.c (update_frame): Flush termscript for MSDOS frames as
  -     well as for TTY.
  -     (Fopen_termscript): Allow opening a termscript on MSDOS frames as
  -     well as on a TTY.
  -
  -     * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
  -     as well as for TTY.
  -
  -     * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
  -
  -     * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
  -     MSDOS frames as well.
  -
  -2008-10-02  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
  -     correct arguments.
  -     * menu.c (find_and_return_menu_selection): Add cast.
  -
  -2008-10-03  Glenn Morris  <rgm@gnu.org>
  -
  -     * emacs.c (USAGE1): Add --daemon.
  -
  -2008-10-02  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * process.c (procfs_system_process_attributes): Multiply `pcpu' by
  -     100, so it's in percents as advertised.
  -
  -2008-10-02  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
  -     (ns_output.current_cursor, ns_output.desired_cursor)
  -     (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
  -     (FRAME_NEW_CURSOR_COLOR): Remove.
  -
  -     * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
  -     (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
  -     enumeration (HOLLOW_BOX_CURSOR, etc.).
  -
  -     * nsterm.m (ns_frame_rehighlight): Remove commented code.
  -     (draw_window_cursor): Simplify code.
  -     (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
  -     Don't change cursor type.  In latter, call rehighlight instead of doing
  -     updates manually.
  -     (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
  -     Use core Emacs cursor types.
  -
  -     * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
  -
  -2008-10-02  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * process.c (Faccept_process_output): Fix doc-string.
  -
  -2008-10-02  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * gmalloc.c (__sbrk): Also define for uClibc.
  -
  -     * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
  -     for uClibc.
  -
  -2008-10-01  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
  -     styles.
  -     (nsfont_open): Reenable the cache.
  -
  -2008-10-01  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * font.c (font_matching_entity): Reflect ATTRS in font selection.
  -     (font_find_for_lface) [HAVE_NS]: Don't ignore case.
  -
  -2008-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
  -     a suspended terminal.
  -
  -2008-09-30  Michael Albinus  <michael.albinus@gmx.de>
  -
  -     * dbusbind.c (xd_signature): Use strcat instead of sprintf.
  -
  -2008-09-30  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
  -
  -2008-09-30  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (move_it_to): Don't advance the iterator if the last tab
  -     in a continued line coincides with a line beginning.
  -
  -2008-09-29  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsfont.m (nsfont_trait_distance): Fix bug.
  -     (nsfont_list): Return a list rather than a vector (syncs with Handa
  -     changes of 2008-05-14).
  -     (nsfont_open): Improve logging.
  -
  -2008-09-29  Andreas Schwab  <schwab@suse.de>
  -
  -     * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
  -
  -2008-09-28  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
  -     name as char-resolve-modifiers.
  -     Reported by: Markus Triska <markus.triska@gmx.at>
  -
  -2008-09-28  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * dispnew.c (init_display): Return earlier when running as a daemon.
  -
  -2008-09-27  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
  -
  -2008-09-27  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * composite.c (Fcomposition_get_gstring)
  -     (Fcompose_region_internal, Fcompose_string_internal)
  -     (Ffind_composition_internal): Doc fix.
  -     (syms_of_composite) <compose-chars-after-function>: Doc fix.
  -     (syms_of_composite) <auto-composition-function>: Doc fix.
  -     (syms_of_composite) <composition-function-table>: Doc fix.
  -
  -2008-09-25  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * search.c (wordify): New argument for lax word-ends.
  -     (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
  -
  -2008-09-24  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * lisp.h (is_daemon): Declare.
  -     * dispnew.c (init_display): Do not try to initialize the terminal
  -     when running as a daemon.
  -
  -2008-09-22  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
  -     x_display_pixel_height.
  -
  -2008-09-22  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * undo.c (record_point): Don't call Fundo_boundary for first
  -     change.  (Bug#731)
  -
  -2008-09-22  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * emacs.c (Fdaemonp): Doc fix.
  -
  -2008-09-22  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * emacs.c (main): Place #ifdef in the proper place.
  -
  -2008-09-21  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * emacs.c (standard_args): Add --daemon.
  -     (main): Disconnect from the terminal when --daemon is passed.
  -     (is_daemon): New variable.
  -     (Fdaemonp): New function.
  -     (syms_of_emacs): Defsubr it.
  -
  -2008-09-20  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (get_next_display_element): Handle string display
  -     correctly when checking for the end of a box run.
  -
  -2008-09-20  Glenn Morris  <rgm@gnu.org>
  -
  -     * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
  -     (syms_of_fileio): Add Qdelete_by_moving_to_trash.
  -     (Frename_file): Avoid copying to trash if a rename involves
  -     a delete.  (Bug#964).
  -
  -2008-09-20  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
  -     (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
  -     frames as well as termcap frames.
  -     (handle_interrupt): Remove "#ifndef MSDOS" around the call to
  -     get_named_tty.
  -
  -2008-09-19  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * process.c (procfs_system_process_attributes): Fix cmdline in
  -     case /proc/PID/cmdline is empty.
  -
  -     * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
  -     x_display_pixel_height.
  -
  -2008-09-19  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
  -
  -     * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
  -     (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
  -
  -2008-09-19  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * dispextern.h (struct it): Move line_wrap away from the middle of
  -     bitfields.  Move voffset in struct iterator_stack_entry after the
  -     bitfields.  Move tab_width near after another short.
  -
  -2008-09-18  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * frame.h (struct frame): Move alpha from the middle of bitfields.
  -
  -     * window.h (struct window): Move frozen_window_start_p after the
  -     rest of the bitfields to reduce padding.
  -
  -2008-09-18  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xterm.h (x_display_info): Remove `height' and `width' members.
  -
  -     * nsterm.h (ns_display_info): Remove `height' and `width' members.
  -
  -     * w32term.h (w32_display_info): Remove `height', `width',
  -     `height_in', and `width_in' members.
  -
  -     * xterm.c (x_display_pixel_height, x_display_pixel_width):
  -     New functions.
  -     (x_calc_absolute_position): Use them.
  -     (x_term_init): Omit removed `height' and `width' members.
  -
  -     * w32term.c (x_display_pixel_height, x_display_pixel_width):
  -     New functions.
  -     (w32_read_socket, x_calc_absolute_position): Use them.
  -     (w32_initialize_display_info, w32_term_init): Omit removed members
  -     of w32_display_info.
  -
  -     * nsterm.m (x_display_pixel_height, x_display_pixel_width):
  -     New functions.
  -     (ns_initialize_display_info): Omit removed members of ns_display_info.
  -
  -     * xterm.c (x_display_pixel_height, x_display_pixel_width):
  -     New functions.
  -     (x_calc_absolute_position): Use them.
  -     (x_term_init): Omit removed `height' and `width' members.
  -
  -     * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
  -     (compute_tip_xy):
  -     * frame.c (x_fullscreen_adjust):
  -     * xmenu.c (menu_position_func): Use x_display_pixel_height and
  -     x_display_pixel_width.
  -
  -2008-09-18  Kenichi Handa  <handa@m17n.org>
  -
  -     * composite.c (fill_gstring_header): Don't check FROM and TO here.
  -     (composition_compute_stop_pos): Fix handling of static composition.
  -     (Fcomposition_get_gstring): Check FROM and TO at first.
  -
  -2008-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
  -     mixup (YAILOM).
  -
  -2008-09-17  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * indent.c (Fvertical_motion): Use position reported by iterator
  -     instead of PT for determining screen motion (bug#943).
  -
  -2008-09-17  Romain Francoise  <romain@orebokech.com>
  -
  -     * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
  -
  -2008-09-17  Kenichi Handa  <handa@m17n.org>
  -
  -     * ftfont.c (ftfont_shape_by_flt): Downcase family name.
  -
  -     * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
  -     if necessary.
  -
  -2008-09-16  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (make_conversion_work_buffer): Avoid calling
  -     Fget_buffer_create if it is not necessary.
  -
  -2008-09-15  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * window.c (Fselect_window): Don't update window_select_count and
  -     use_time when norecord is not nil.
  -
  -2008-09-14  Kenichi Handa  <handa@m17n.org>
  -
  -     * fileio.c (Finsert_file_contents): Delete incorrect decrement of
  -     specpdl_ptr.
  -
  -2008-09-12  Kenichi Handa  <handa@m17n.org>
  -
  -     * indent.c (scan_for_column): Don't handle automatic composition
  -     if the current buffer is not associated with a window.
  -
  -     * composite.c (composition_reseat_it): If the current buffer is
  -     not associated with a window, ignore the automatic composition.
  -     (find_automatic_composition): Likewise.
  -
  -2008-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
  -     (Fgpm_mouse_stop): Use it.
  -     * termhooks.h (close_gpm): Declare.
  -     * keyboard.c (tty_read_avail_input): Forcefully close the gpm
  -     connection if Gpm_GetEvent fails.
  -
  -     * window.c (set_window_buffer): Always preserve current-buffer.
  -
  -2008-09-12  Glenn Morris  <rgm@gnu.org>
  -
  -     * charset.c (init_charset): Warn if etc/charsets not found.  (Bug#909)
  -
  -2008-09-11  Glenn Morris  <rgm@gnu.org>
  -
  -     * charset.c (charset-map-path): Doc fix.
  -
  -2008-09-10  Kenichi Handa  <handa@m17n.org>
  -
  -     * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
  -
  -     * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
  -     compose a grapheme cluster with the preceding base glyph.
  -
  -     * composite.c (composition_compute_stop_pos): Fix previous change.
  -     Reset cmp_it->id to -1 at first.
  -
  -2008-09-10  Glenn Morris  <rgm@gnu.org>
  -
  -     * Makefile.in (character.o, chartab.o): Fix config.h typo.
  -
  -2008-09-09  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * keyboard.c (read_key_sequence): Reapply translation maps when
  -     switching keyboards.
  -
  -2008-09-09  Kenichi Handa  <handa@m17n.org>
  -
  -     * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
  -     characters.
  -
  -     * composite.c (FORWARD_CHAR): Fix calculation
  -     of (POSITION).pos_byte.
  -     (composition_compute_stop_pos): Limit the search of composition to
  -     at most 500 characters ahead.  If we reach the limit or find a
  -     newline, set cmp_it->ch to -2 and return 0.
  -     (composition_reseat_it): Handle the case that cmp_it->ch is -2.
  -
  -2008-09-08  Kenichi Handa  <handa@m17n.org>
  -
  -     * indent.c (Fvertical_motion): Be sure to set
  -     it_overshoot_expected if it.cmp_it.id is non-negative.
  -
  -2008-09-07  Andreas Schwab  <schwab@suse.de>
  -
  -     * callproc.c (Fcall_process): Don't hold references to string data
  -     across garbage collection.  Move initialisation of new_argv down
  -     to avoid compiler bug.
  -
  -2008-09-07  Roland Winkler  <Roland.Winkler@physik.uni-erlangen.de>
  -
  -     * process.c (Fsystem_process_attributes): Doc fix.
  -
  -2008-09-07  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * callproc.c (Fcall_process): Canonicalize current directory name.
  -
  -     * xdisp.c (move_it_to): When moving by vpos, ensure that the
  -     iterator advances to the next line if the current line ends in a
  -     continued tab.
  -
  -2008-09-07  Teodor Zlatanov  <tzz@lifelogs.com>
  -
  -     * nsfont.m (nsfont_draw): Fix the references to missing gidx data
  -     member to point to cmp_from.
  -
  -     * xdisp.c: Doc fix for references to gidx data member.
  -
  -2008-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * buffer.c (Fbuffer_swap_text): Reset window->point markers.
  -
  -2008-09-07  Kenichi Handa  <handa@m17n.org>
  -
  -     * composite.c (FORWARD_CHAR): Check STOP after
  -     incrementing (POSITION).pos.
  -
  -2008-09-06  Roland Winkler  <Roland.Winkler@physik.uni-erlangen.de>
  -
  -     * process.c (Fsystem_process_attributes): Doc fix.
  -
  -2008-09-06  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * keyboard.c (Ftop_level): Doc fix.
  -
  -2008-09-06  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
  -     minibuffer, don't let lower part of menu invade the echo area.
  -
  -     * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
  -     "char *q" to access menu text and advance through it.  Revert the
  -     change that displayed ">" instead of ASCII character 0x10.
  -
  -2008-09-05  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
  -     toggle boxes and radio buttons on MS-DOS as well.
  -
  -2008-09-05  Kenichi Handa  <handa@m17n.org>
  -
  -     * composite.c (autocmp_chars): Check lookback count.
  -     (composition_compute_stop_pos): Set cmp_it->lookback.
  -     (composition_reseat_it): Check lookback count.
  -     (struct position_record): New struct.
  -     (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
  -     (find_automatic_composition): New function.
  -     (composition_adjust_point): Use find_automatic_composition.
  -
  -     * dispextern.h (struct composition_it): New member lookback.
  -
  -2008-09-02  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * indent.c (Fvertical_motion): Don't call move_it_by_lines again
  -     if moving by a single line.
  -
  -2008-09-02  Andreas Schwab  <schwab@suse.de>
  -
  -     * xterm.c (x_delete_display): Fix merge error.
  -
  -     * fileio.c (Fexpand_file_name): Remove unused variables.
  -
  -2008-09-02  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * fileio.c (Fexpand_file_name): Copy argument `name' into local
  -     storage on all platforms, not just on DOS_NT.
  -
  -2008-09-02  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
  -     Ensure mouse is not grabbed after menu is finished.
  -
  -2008-09-01  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xfaces.c (Finternal_set_alternative_font_family_alist)
  -     (Finternal_set_alternative_font_registry_alist): Properly copy
  -     entire alist structure.
  -
  -2008-09-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
  -     representative chars of the script is a vector.
  -     (ftfont_list): Handle the case where the representative chars of
  -     the script is a vector.
  -
  -     * character.c (syms_of_character): Docstring of
  -     script-representative-chars fixed.
  -
  -2008-08-31  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * msdos.c (BUILD_CHAR_GLYPH): New macro.
  -     (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
  -     the menu.  Allocate larger buffer for `text', to account for
  -     possible ^C characters.
  -
  -2008-08-31  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * xdisp.c (prepare_menu_bars): Don't call
  -     Vwindow_size_change_functions with arg Qt.
  -
  -2008-08-31  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * font.h (font_range):
  -     * fileio.c (report_file_error):
  -     * composite.c (composition_update_it): Yet another int/Lisp_Object
  -     mixup (YAILOM).
  -
  -2008-08-30  Glenn Morris  <rgm@gnu.org>
  -
  -     * data.c (Fmake_variable_frame_local): Doc fix.
  -
  -     * frame.c (Fmodify_frame_parameters): Doc fix.
  -
  -2008-08-30  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
  -     needed by GetTokenInformation.
  -     (w32_system_process_attributes): Check return values of all system
  -     APIs.
  -
  -     * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
  -     only when the state changes.
  -     (IT_update_begin, IT_update_end): Add termscript trace.
  -
  -     * w16select.c (Fw16_set_clipboard_data): Don't encode text if
  -     clipboard is unavailable.  Set dst to NULL if it doesn't point to
  -     malloc'ed data.
  -     (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
  -     passing random values to xfree.
  -
  -     * dispnew.c (init_display): Set `tty's association in frame's
  -     parameters alist to the name of the terminal device, if that is known.
  -
  -2008-08-29  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
  -
  -2008-08-29  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * composite.c (fill_gstring_body): Avoid compiler warnings.
  -
  -     * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
  -     LGLYPH_SET_CODE to avoid compiler warnings.
  -
  -     * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
  -
  -     * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
  -
  -     * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
  -     LGLYPH_SET_CODE.
  -
  -2008-08-29  Kenichi Handa  <handa@m17n.org>
  -
  -     * fileio.c (report_file_error): Don't downcase the first character
  -     of errstring if it is still unibyte.
  -
  -2008-08-29  Kenichi Handa  <handa@m17n.org>
  -
  -     These changes are to re-implement the automatic composition so
  -     that it doesn't use text properties.
  -
  -     * Makefile.in (ftfont.o): Depend on composite.h.
  -     (composite.o): Depend dispextern.h, font.h, frame, and window.h.
  -
  -     * character.h (Vunicode_category_table): Extern it.
  -
  -     * character.c (Vunicode_category_table): New variable.
  -     (syms_of_character): DEFVAR_LISP Vunicode_category_table.
  -
  -     * chartab.c (optimize_sub_char_table): Perform more greedy
  -     optimization.
  -
  -     * composite.h (enum composition_method):
  -     Delete COMPOSITION_WITH_GLYPH_STRING.
  -     (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
  -     (Vcomposition_function_table): Extern it.
  -     (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
  -     (composition_gstring_put_cache, composition_gstring_from_id)
  -     (composition_gstring_p, composition_gstring_width)
  -     (composition_compute_stop_pos, composition_reseat_it)
  -     (composition_update_it, composition_adjust_point): Extern them.
  -     (Fcomposition_get_gstring): EXFUN it.
  -
  -     * composite.c: Include window.h, frame.h, dispextern.h, font.h.
  -     (Vcomposition_function_table)
  -     (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
  -     (gstring_hash_table, gstring_work, gstring_work_headers):
  -     New variables.
  -     (gstring_lookup_cache, composition_gstring_put_cache)
  -     (composition_gstring_from_id, composition_gstring_p)
  -     (composition_gstring_width, fill_gstring_header)
  -     (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
  -     (composition_reseat_it, composition_update_it)
  -     (composition_adjust_point, Fcomposition_get_gstring): New functions.
  -     (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
  -     and gstring_work_headers.  DEFVAR_LISP composition-function-table.
  -     Defsubr composition_get_gstring.
  -
  -     * dispextern.h (struct glyph): New union u.cmp.  Delete the member
  -     cmp_id.
  -     (struct glyph_string): Delete the member gidx.  New members
  -     cmp_id, cmp_from, and cmp_to.
  -     (enum it_method): Delete GET_FROM_COMPOSITION.
  -     (struct composition_it): New struct.
  -     (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
  -     Delete c, len, cmp_id, cmp_len in u.comp.
  -
  -     * font.h (enum lgstring_indices): Delete it.
  -     (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
  -     (enum lglyph_indices): Likewise.
  -     (font_range): Adjust extern.
  -     (font_fill_lglyph_metrics): Extern it.
  -
  -     * font.c (QCf): New variable.
  -     (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
  -     (font_prepare_composition): Delete this function.
  -     (font_range): Type and arguments changed.
  -     (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
  -     (font_fill_lglyph_metrics): New function.
  -     (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
  -     (syms_of_font): DEFSYM QCf.  Delete defsubr for
  -     Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
  -     Defsubr Sfont_shape_gstring.
  -
  -     * fontset.h (font_for_char): Extern it.
  -
  -     * fontset.c (font_for_char): New function.
  -
  -     * ftfont.c: Include composite.h.
  -     (ftfont_resolve_generic_family): Add langset "en" to pattern.
  -     (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
  -
  -     * indent.c: Include composite.h and dispextern.h.
  -     (check_composition): Delete this function.
  -     (scan_for_column): Handle composition by
  -     composition_compute_stop_pos, composition_reseat_it, and
  -     composition_update_it.
  -     (compute_motion): Likewise.
  -     (Fvertical_motion): Fix checking of composition.
  -
  -     * keyboard.c (adjust_point_for_property): Check composition by
  -     composition_adjust_point.
  -
  -     * nsterm.m (ns_draw_glyph_string): Adjust for the change of
  -     struct glyph_string.
  -
  -     * term.c (encode_terminal_code): Adjust for the change of struct glyph.
  -     (append_composite_glyph): Adjust for the change of struct it and
  -     struct glyph.
  -     (produce_composite_glyph): Likewise.
  -
  -     * w32term.c (x_draw_composite_glyph_string_foreground):
  -     Adjust for the change of struct glyph_string.
  -     (x_draw_glyph_string): Likewise.
  -
  -     * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
  -     (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
  -
  -     * xdisp.c: Include font.h.
  -     (it_props): Delete the entry for Qauto_composed.
  -     (init_iterator): Initialize it->cmp_it.id to -1.
  -     (compute_stop_pos): Call composition_compute_stop_pos.
  -     (face_before_or_after_it_pos): Adjust for the change of struct it.
  -     (handle_auto_composed_prop): Delete it.
  -     (handle_composition_prop): Handle only static composition.
  -     (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
  -     from xassert.  Initialize it->cmp_it.stop_pos.
  -     (push_it): Adjust for the change of struct it.
  -     (pop_it): Likewise.
  -     (get_next_element): Delete next_element_from_composition.
  -     (CHAR_COMPOSED_P): New macro.
  -     (get_next_display_element): For automatic composition, get a face
  -     from the font in the glyph-string.
  -     (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
  -     check composition by it->cmp_it.id.  Delete GET_FROM_COMPOSITION case.
  -     (next_element_from_string): Check if the character at the current
  -     position is composed by CHAR_COMPOSED_P.
  -     (next_element_from_buffer): Likewise.
  -     (next_element_from_composition): Adjust for the change of struct it.
  -     Update it->cmp_it.
  -     (dump_glyph): Adjust for the change of struct glyph.
  -     (fill_composite_glyph_string): Adjust for the change of struct
  -     it and struct glyph.  Don't handle automatic composition here.
  -     (fill_gstring_glyph_string): New function.
  -     (x_get_glyph_overhangs): Handle automatic composition.
  -     (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
  -     (BUILD_GSTRING_GLYPH_STRING): New macro.
  -     (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
  -     automatic composition.
  -     (append_composite_glyph): Adjust for the change of struct it and
  -     struct glyph.
  -     (x_produce_glyphs): Adjust for the change of struct it.
  -
  -     * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
  -     the change of struct glyph_string.
  -     (x_draw_glyph_string): Likewise.
  -
  -2008-08-29  Glenn Morris  <rgm@gnu.org>
  -
  -     * buffer.c (word-wrap): Doc fix.
  -     * xdisp.c (truncate-partial-width-windows): Doc fix.
  -     Increase default to 50.
  -
  -2008-08-29  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (update_tool_bar_unwind): New function.
  -     (update_tool_bar): Temporarily set selected frame before building
  -     tool-bar items.
  -
  -2008-08-28  Michael Albinus  <michael.albinus@gmx.de>
  -
  -     * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
  -     snprintf, respectively.
  -     (xd_append_arg): Convert strings with Fstring_make_unibyte.
  -
  -2008-08-28  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * Makefile.in: Revert (undocumented) 2008-08-20 change adding
  -     LDFLAGS to GNUstep CC invocation.
  -
  -2008-08-27  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * indent.c (Fvertical_motion): Revert last change.  Handle the
  -     general case where we are moving forward, and PT spans multiple
  -     screen lines.
  -
  -     * eval.c (find_handler_clause): Temporarily increase
  -     max-lisp-eval-depth while printing the backtrace buffer, to
  -     guarantee that help-mode code can run.
  -
  -2008-08-27  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
  -     colors under -rv.
  -     (IT_set_frame_parameters): Don't swap foreground and background
  -     colors if `(reverse . t)' is present in the frame properties.
  -     (internal_terminal_init): Call init_frame_faces only for the
  -     initial frame.
  -
  -2008-08-27  Andreas Schwab  <schwab@suse.de>
  -
  -     * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
  -
  -2008-08-27  Andreas Schwab  <schwab@suse.de>
  -
  -     * search.c (search_buffer): Set char_base to zero only at the end.
  -
  -2008-08-27  Kenichi Handa  <handa@m17n.org>
  -
  -     * fileio.c (report_file_error): Fix handling of multibyte error string.
  -
  -2008-08-27  Andreas Seltenreich  <seltenreich@gmx.de>
  -
  -     * xterm.c (x_term_init): Temporarily hide the partially
  -     initialized terminal while calling vendor-specific-keysyms.
  -
  -2008-08-26  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * msdos.c (internal_terminal_init): Most initializations done only
  -     once, especially initial_screen_colors[] and termscript open.
  -
  -2008-08-26  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * eval.c (Fcondition_case): Doc fix.
  -
  -     * widgetprv.h (EmacsFramePart): Change font member to the new font
  -     struct.
  -
  -     * widget.c: Include character.h and font.h for XSETFONT.
  -     (setup_frame_gcs): Compute X font id from font struct, just once.
  -
  -2008-08-26  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * term.c (get_named_tty): Fix last change.
  -
  -2008-08-26  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * indent.c (Fvertical_motion): If moving forward starting from a
  -     multi-line string, move the iterator to the last line of that string.
  -
  -2008-08-25  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * frame.c (do_switch_frame): Mark previously displayed frame as
  -     obscured for FRAME_MSDOS_P frames as well.
  -
  -2008-08-24  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * frame.c (make_terminal_frame): Initialize f->terminal,
  -     f->terminal->reference_count, and scroll bars on MS-DOS as well.
  -     Set the top frame to newly created frame.
  -     (Fmake_terminal_frame): Reuse the_only_display_info.
  -
  -     * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
  -     estimating available memory.
  -
  -2008-08-23  David Reitter  <david.reitter@gmail.com>
  -
  -     * nsterm.m (ns_draw_window_cursor): Don't call
  -     NSDisableScreenUpdates and NSEnableScreenUpdates on
  -     non-NS_IMPL_COCOA systems.
  -
  -2008-08-23  Andreas Schwab  <schwab@suse.de>
  -
  -     * process.c (procfs_system_process_attributes): Fix use of
  -     uninitialized variables.
  -
  -2008-08-23  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
  -
  -     * dispnew.c (init_display): Remove MS-DOS specific conditions for
  -     calling tty-set-up-initial-frame-faces.
  -
  -     * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
  -     Allow MSDOS frames along with X frames.
  -
  -     * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
  -     addition to output_termcap.
  -
  -     * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
  -
  -     * termchar.h (FRAME_TTY): Support output_msdos_raw.
  -     (struct tty_display_info) [MSDOS]: Add fields related to mouse
  -     highlight.
  -
  -     * process.c [!subprocesses]: Define QCname.
  -     (syms_of_process): Intern and staticpro it.
  -
  -     * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
  -     Adjust for changes in encoding/decoding routines.
  -     Use encode_coding_object and decode_coding_object instead of
  -     encode_coding and decode_coding.
  -
  -     * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
  -
  -     * dosfns.c: Include frame.h before termhooks.h.
  -     (dos_cleanup): Use CURTTY ()->termscript instead of a global
  -     variable termscript.
  -
  -     * s/msdos.h (USER_FULL_NAME): Define.
  -     (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
  -
  -     * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
  -     (Fuser_full_name): Use USER_FULL_NAME instead of a literal
  -     pw->pw_gecos.
  -
  -     * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
  -     SELECTED_FRAME as additional (1st) argument.
  -     (tty_read_avail_input): Handle output_msdos_raw in
  -     addition to output_termcap.
  -
  -     * msdos.c: Include frame.h before termhooks.h.
  -     (mouse_on, mouse_off, mouse_moveto, mouse_init)
  -     (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
  -     (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
  -     (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
  -     (IT_set_terminal_modes, IT_reset_terminal_modes)
  -     (IT_set_frame_parameters): Use tty->termscript instead of a global
  -     variable termscript.
  -     (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
  -     global variable terminal_coding.  Don't refer to
  -     Vnonascii_translation_table.
  -     (internal_terminal_init): Set Vwindow_system in current_kboard.
  -     Don't use TTY_CHAR_INS_DEL_OK.  Set Vinitial_window_system.
  -     Announce date and time of session start, if termscript is open.
  -     Don't zero out the_only_display_info (it is done in
  -     term.c:init_tty).  Open termscript only of not already open.
  -     Log "SCREEN SAVED" here, instead of IT_set_terminal_modes.  Init mouse
  -     here instead of dos_ttraw.  Don't initialize display if this is an
  -     initial tty.  Don't set FRAME_FONT.
  -     (Vwindow_system_version): Bump to 23.
  -     (dos_ttraw): Accept a TTY argument; all callers fixed.  If mouse
  -     is available, set up mouse_position_hook.
  -     (dos_ttraw, IT_set_terminal_modes): If called with initial
  -     terminal, do nothing.
  -     (IT_set_frame_parameters): Handle the Qtty_type frame
  -     parameter by calling internal_terminal_init.
  -     (dos_set_window_size, show_mouse_face)
  -     (clear_mouse_face, IT_note_mode_line_highlight)
  -     (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
  -     (dos_rawgetc): Use tty_display_info instead of x_display_info.
  -     (initialize_msdos_display): New function.
  -     (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
  -     (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
  -     (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
  -     (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
  -     Accept additional argument: a pointer to a frame.  Update all callers.
  -     (request_sigio, unrequest_sigio): Don't define, now defined on
  -     sysdep.c.
  -     (IT_write_glyphs): Rewrite to use encode_terminal_code.
  -
  -     * term.c [MSDOS]: Include msdos.h.
  -     (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch.  Change cpp
  -     conditional to DOS_NT.  Allow only one call to this function in a
  -     session.  Don't allocate a new struct tty_display_info; instead,
  -     reuse the_only_display_info.  Call get_tty_size to get screen
  -     dimensions.  Call init_baud_rate to set bad_rate.
  -     (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
  -     (Fsuspend_tty) [MSDOS]: Don't close input and output.
  -     (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
  -     (get_tty_terminal, get_named_tty, Ftty_type)
  -     (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
  -     output_termcap.
  -     (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
  -     Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
  -     only when subprocesses are supported.
  -
  -     * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
  -     f->output_data.x.
  -     (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
  -     terminal devices.
  -
  -     * msdos.h: Remove definition of struct x_display_info and struct
  -     x_output.
  -     (FRAME_FONT): Use output_data.tty.
  -     (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
  -     (struct x_display_info): Rename from display_info.  Update all users in
  -     msdos.c.
  -     (struct x_output): Remove background_pixel and foreground_pixel.
  -     (the_only_display_info): Rename from the_only_x_display.
  -     (dos_ttraw): Update prototype.
  -
  -     * Makefile.in (MSDOS_OBJ): Add xmenu.o.
  -     (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
  -
  -2008-08-23  Jason Rumney  <jasonr@gnu.org>
  -
  -     * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
  -     (fn_TIFFSetDirectory): New library function used.
  -     (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
  -     (tiff_load): Use :index to select among multiple images.  Set count
  -     property when multiple images exist.
  -     (gif_format): Use :index, not :image.
  -
  -2008-08-23  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (try_scrolling): Check INT_MAX instead of
  -     MOST_POSITIVE_FIXNUM for maximum integer value.  Include limits.h
  -     to obtain INT_MAX.
  -
  -2008-08-21  İsmail Dönmez  <ismail@namtrac.org>  (tiny change)
  -
  -     * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
  -
  -2008-08-21  Christian Faulhammer  <opfer@gentoo.org>  (tiny change)
  -
  -     * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
  -     GNUstep library location.
  -
  -2008-08-21  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xfaces.c (x_update_menu_appearance): Check validity of menu font
  -     before using it.
  -
  -     * puresize.h (BASE_PURESIZE): Increase to 1250000.
  -
  -2008-08-20  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsfns.m (ns-read-file-name): Add casts to avoid warning.
  -     (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
  -     * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
  -     * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
  -     (EmacsApp-cursor_blink_handler): Remove declaration.
  -     * nsterm.m (ns_draw_glyph_string): Update first conditional body to
  -     match 01 Feb 2008 changes in xterm.c.
  -     (ns_read_socket): Add cast to avoid warning.
  -     (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
  -     GNUstep.
  -
  -2008-08-20  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xselect.c (x_get_foreign_selection): Return nil if desired
  -     selection could not be obtained, instead of signalling an error.
  -
  -2008-08-20  David Reitter  <david.reitter@gmail.com>
  -
  -     * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
  -     * nsterm.m: Remove ns-specific code for cursor blinking.
  -     (ns_draw_window_cursor): Clear cursor properly rather than
  -     redrawing the area.  Respect width of bar cursors.
  -     These changes enable the use of generic blink-cursor-mode and
  -     generic cursor types in NS and support smooth cursor movements (do
  -     not blink off after command).
  -     * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
  -     Nextstep, too.
  -
  -2008-08-19  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (Vfont_log_deferred): New variable.
  -     (font_add_log): Check Vfont_log_deferred.
  -     (font_deferred_log): New function.
  -
  -     * font.h (font_deferred_log): Extern it.
  -
  -     * fontset.c (reorder_font_vector): Use encoding charset of fonts
  -     for sorting.
  -     (face_for_char): Use deferred log.
  -
  -2008-08-18  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (face_for_char): Add font log.
  -
  -     * font.c (font_add_log): Add the font properties :script, :lang,
  -     and :otf in the log.
  -
  -2008-08-17  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c: Remove dead code.
  -     (handle_invisible_prop, next_overlay_string): Defer call to
  -     setup_for_ellipsis.
  -     (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
  -
  -2008-08-15  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xfaces.c (lookup_derived_face): Properly handle possible zero
  -     return value of get_lface_attributes.
  -     (merge_faces): Don't tell lookup_derived_face to signal an error
  -     if face is not found.
  -
  -     * dired.c (Fdirectory_files): Doc fix.
  -
  -     * process.c (make_process): Initialize kill_without_query struct
  -     member.
  -
  -2008-08-15  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
  -     Alternative calculation of totphys for Visual Studio 6.
  -
  -     * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
  -
  -     * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
  -     Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
  -     All users changed.
  -     (stat): Only root directory passed to GetDriveType.  Allow RAM
  -     disk as well as local fixed disk when w32-get-true-file-attributes
  -     is set to `local'.
  -     (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
  -     (equal_sid, get_length_sid, copy_sid): New wrapper functions.
  -     (w32_cached_id, w32_add_to_cache): New functions.
  -     (get_name_and_id): Look account names in the cache before calling
  -     lookup_account_sid.
  -     (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
  -     New initialization flags.
  -     (globals_of_w32): Initialize them to zero.
  -     (w32_system_process_attributes): Use w32_cached_id and
  -     w32_add_to_cache.
  -
  -2008-08-14  Lawrence Mitchell  <wence@gmx.li>
  -
  -     * lread.c (Fread_char, Fread_char_exclusive): If no character
  -     event is read before timeout is reached, return nil, rather than
  -     converting to a number.
  -
  -2008-08-14  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * fns.c (use_dialog_box): Doc fix.
  -
  -     * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
  -     on OS X.
  -
  -2008-08-13  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * frame.c (Qns_parse_geometry): New var.
  -     (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
  -
  -2008-08-11  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (x_produce_glyphs): Handle the case when font has no
  -     space character in calculating tabs.
  -
  -2008-08-11  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
  -
  -2008-08-10  Glenn Morris  <rgm@gnu.org>
  -
  -     * process.c (procfs_system_process_attributes): Use EMACS_INTs to
  -     silence gcc "limited range of data type" warnings in some
  -     make_fixnum_or_float calls.
  -
  -2008-08-09  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * w32.c (w32_system_process_attributes): If the process does not
  -     exist, return nil.
  -
  -     * w32.c: Include thelp32.h, psapi.h and coding.h.
  -     (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
  -     declarations.
  -     (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
  -     (Process32Next_Proc): New typedefs.
  -     (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
  -     (g_b_init_process32_next, g_b_init_open_thread_token)
  -     (g_b_init_impersonate_self, g_b_init_revert_to_self)
  -     (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
  -     (g_b_init_get_process_working_set_size)
  -     (g_b_init_global_memory_status_ex): New static variables.
  -     (globals_of_w32): Initialize them.
  -     (create_toolhelp32_snapshot, process32_first, process32_next)
  -     (open_thread_token, impersonate_self, revert_to_self)
  -     (get_process_memory_info, get_process_working_set_size)
  -     (global_memory_status, global_memory_status_ex): New wrapper
  -     functions.
  -     (w32_list_system_processes, w32_system_process_attributes)
  -     (enable_privilege, restore_privilege, ltime, process_times):
  -     New functions.
  -     (convert_time_raw): New function.
  -     (convert_time): Remove conversion of FILETIME into time in 100
  -     nsec units, call convert_time_raw instead.
  -
  -     * process.h (w32_list_system_processes, w32_system_process_attributes):
  -     Add prototypes.
  -     (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
  -     (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
  -     (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
  -     (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
  -
  -     * process.c (Fsystem_process_attributes): Doc fix.
  -
  -2008-08-08  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (move_it_to): When stopping at a charpos, check if that's
  -     a continued multi-char glyph; if so, advance to the actual glyph.
  -
  -2008-08-07  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
  -
  -     * Makefile.in (ALL_OBJC_CFLAGS): New variable.
  -     (.m.o): Use it.
  -     * config.in: Regenerate.
  -
  -2008-08-07  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (redisplay_window): Revert last change.
  -     (try_window): Check bottom scroll margin too.
  -
  -2008-08-06  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * config.in: Regenerate.
  -
  -     * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
  -     -list-load-path-shadows'.
  -     (nsgui.h): Reduce number of things depending on it.
  -
  -2008-08-06  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
  -     instead of window-end which does the wrong thing at eob.
  -     (try_cursor_movement): Minor optimization.
  -     (redisplay_window): If scroll margin is defined, don't assume
  -     window doesn't need scrolling.
  -
  -2008-08-06  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * config.in: Regenerate.
  -
  -     * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
  -     (mostlyclean): Don't delete *.d under NS.
  -
  -     * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
  -
  -2008-08-06  Kenichi Handa  <handa@m17n.org>
  -
  -     * xfont.c (xfont_list_family): Return a list of symbols, not strings.
  -
  -2008-08-06  Andreas Schwab  <schwab@suse.de>
  -
  -     * config.in: Regenerate.
  -
  -2008-08-05  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (redisplay_window): Don't enforce scroll-margin when
  -     forcing a window start.
  -
  -     * fileio.c (Vauto_save_list_file_name): Move here from file.el.
  -     (auto_save_1): Update modtime when auto-save-list-file-name is on.
  -
  -2008-08-04  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
  -     argument.
  -
  -2008-08-05  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
  -     <scroll-down-aggressively, before-change-functions>:
  -     <after-change-functions>: Reflow docstrings.
  -
  -2008-08-04  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -         Ken Raeburn  <raeburn@gnu.org>
  -
  -     Dock menu customization, based on a patch by Ken Raeburn, plus some
  -     other fixes.
  -     * nsmenu.m (dockMenu): New variable.
  -     (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
  -
  -     * nsterm.h (dockMenu): Declare.
  -
  -     * nsterm.m (KEY_NS_NEW_FRAME): New definition.
  -     (ns_term_init): Initialize dockMenu.
  -     (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
  -     (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
  -     left.
  -
  -     * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
  -
  -2008-08-04  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
  -
  -     * config.in: Regenerate.
  -
  -2008-08-04  Seiji Zenitani  <zenitani@mac.com>
  -
  -     * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
  -
  -2008-08-04  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * nsterm.h (find_and_call_menu_selection): Fix prototype.
  -
  -2008-08-04  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
  -
  -     * keyboard.h: Comment an #endif.
  -
  -     * lisp.h (have_menus_p): Adjust comment.
  -
  -     * menu.c (find_and_return_menu_selection): Fix comparison with
  -     client_data.
  -
  -     * nsmenu.m (popup_activated_flag): New variable.
  -     (popup_activated): New function.
  -     (menu-or-popup-active-p): New exported lisp definition.
  -     (ns_popup_menu): Set popup_activated_flag.  Call discard_menu_items()
  -     when popup done.
  -     (ns_popup_dialog): Set popup_activated_flag.
  -
  -     * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
  -     version for GNUstep (handled by conditional typedef in nsterm.m).
  -     (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
  -     in rgb.txt).
  -
  -     * process.c (init_process): Use DARWIN_OS, not DARWIN.
  -
  -     * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
  -
  -     * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
  -
  -     * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
  -     shortcircuit if popup_activated like GTK and X toolkit.
  -
  -     * m/inter386.h: Change DARWIN to DARWIN_OS.
  -
  -     * s/darwin.h: Add #define DARWIN_OS.  Get rid of C_SWITCH_SYSTEM def.
  -     Change LIBS_MACGUI to LIBS_NSGUI.  Move temacs-conditionalized defs
  -     closer to C_SWITCH_SYSTEM_TEMACS so usage is understood.  Expand
  -     comment on NO_SOCK_SIGIO.
  -
  -2008-08-03  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * nsterm.m (windowDidResize): Remove stopModal call.
  -
  -2008-08-03  Andreas Schwab  <schwab@suse.de>
  -
  -     * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
  -     (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
  -
  -2008-08-02  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
  -     Don't use uninitialized pointer variable when using getrlimit.
  -
  -2008-08-02  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
  -
  -2008-08-02  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * alloc.c (NSTATICS): Bump to 0x640.
  -
  -     * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
  -
  -     * lisp.h: Add prototype for directory_files_internal.
  -
  -     * process.c (Fsystem_processes_list, Fsystem_process_attributes):
  -     New functions.
  -     (syms_of_process): Defsubr them.  Add initializations for various
  -     Q* symbols used in procfs_system_process_attributes.
  -     (procfs_list_system_processes, procfs_system_process_attributes)
  -     [HAVE_PROCFS]: New functions.
  -     (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
  -     (procfs_get_total_memory): New functions.
  -
  -2008-08-01  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * xfaces.c (Fx_load_color_file): Fix previous change;
  -     it is #ifdef WINDOWSNT, not WINDOWS_NT.
  -
  -2008-08-01  Michael Albinus  <michael.albinus@gmx.de>
  -
  -     * dbusbind.c (xd_read_message): Handle D-Bus error messages.
  -
  -2008-08-01  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
  -
  -2008-08-01  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
  -
  -     * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
  -     define NSApplicationDelegateReplySuccess.
  -     (EmacsView -converstationIdentifier): Use long instead of
  -     NSInteger for GNUstep, since it doesn't have NSInteger.
  -
  -     * xmenu.c: Revert last change.
  -
  -     * keyboard.h: Fix last change.
  -
  -2008-08-01  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
  -     on Windows.
  -
  -2008-08-01  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     Warning clearing and clean-up in NS port.
  -     * keyboard.h (xmalloc_widget_value, digest_single_submenu):
  -     Add prototypes.
  -     * nsgui.h (FACE_DEFAULT): Remove, unused.
  -     (XGCValues): Change colors to unsigned long.
  -     * nsterm.h (EmacsApp): Add declaration of all methods implemented in
  -     nsterm.m.
  -     (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
  -     (ns_list_fonts): Remove, unused.
  -     (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
  -     * nsfns.m (interpret_services_menu): Use NSMenuItem class.
  -     * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
  -     (nsfont_draw): Compare face colors to 0, not nil.
  -     * nsmenu.m (struct widget_value): Drop unneeded declaration.
  -     (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
  -     (-addSubmenuWithTitle:): Use NSMenuItem class.
  -     (ns_popup_menu): Use NO, not NULL, for enabled setting.
  -     * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
  -     (ns_clip_to_row): Make gc arg a BOOL.
  -     (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
  -     ns_clip_to_row() call.
  -     (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
  -     used).  Cast FRAME_FONT assignments.
  -     (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
  -     (ns_string_to_lispmod): Change arg to const char.
  -     (ns_term_init): Use NSMenuItem class.
  -     (EmacsApp -openFile:): Move to different section of file.
  -     (EmacsApp -application:openFiles:): Don't return a value, call
  -     -replyToOpenOrPrint:.
  -     (EmacsView -keyDown:): Fix up cast.
  -     (EmacsView -converstationIdentifier): Use NSInteger instead of long.
  -     (EmacsView -menuDown:): Cast tag in call to
  -     find_and_call_menu_selection().
  -     (ns_list_fonts): Remove, unused.
  -     (ns_font_to_xlfd): Make static.  Cast result of UTF8String.
  -     (ns_fontname_to_xlfd): Make static.
  -     * w32menu.c (xmalloc_widget_value, digest_single_submenu):
  -     Remove prototypes (now in keyboard.h).
  -     (next_menubar_widget_id): Remove, unused.
  -     * xmenu.c (xmalloc_widget_value, digest_single_submenu):
  -     Remove prototypes (now in keyboard.h).
  -     * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
  -
  -2008-08-01  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
  -     (floatfns.o): Depend on syssignal.h.
  -     (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
  -
  -     * systty.h: Fix previous change that removed BSD_TERMIOS.
  -     Add comments to #ifdefs.
  -
  -2008-08-01  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * w32fns.c (w32-load-color-file): Remove.
  -     (x-open-connection): Use renamed Fx_load_color_file.
  -     * xfaces.c (x-load-color-file): Add.
  -     * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
  -     Emacs.clr.
  -     (hide_hourglass): BLOCK_INPUT before UNBLOCK.
  -
  -2008-07-31  Michael Albinus  <michael.albinus@gmx.de>
  -
  -     * dbusbind.c (Fdbus_call_method_asynchronously)
  -     (Fdbus_method_error_internal): New defuns.
  -     (xd_read_message): Handle also reply messages.
  -     (Vdbus_registered_functions_table): Extend docstring.
  -
  -2008-07-31  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * keyboard.c (gobble_input): Fix previous change.
  -
  -2008-07-31  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * bitmaps/README:
  -     * xfns.c:
  -     * termcap.c:
  -     * term.c:
  -     * syswait.h:
  -     * systty.h:
  -     * systime.h:
  -     * syssignal.h:
  -     * sysdep.c:
  -     * process.h:
  -     * process.c:
  -     * print.c:
  -     * ndir.h:
  -     * lread.c:
  -     * keyboard.c:
  -     * getpagesize.h:
  -     * floatfns.c:
  -     * fileio.c:
  -     * emacs.c:
  -     * doc.c:
  -     * dispnew.c:
  -     * dired.c:
  -     * data.c:
  -     * callproc.c:
  -     * buffer.c:
  -     * README:
  -     * Makefile.in:
  -     * s/template.h:
  -     * s/msdos.h:
  -     * m/vax.h: Remove VMS support.
  -     * s/vms.h:
  -     * vlimit.h:
  -     * uaf.h:
  -     * temacs.opt:
  -     * param.h:
  -     * ioctl.h: Remove file.
  -
  -2008-07-31  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * s/ms-w32.h (MULTI_KBOARD): Remove.
  -     * xterm.c:
  -     * xselect.c:
  -     * xfns.c:
  -     * window.c:
  -     * w32term.c:
  -     * w32fns.c:
  -     * terminal.c:
  -     * termhooks.h:
  -     * term.c:
  -     * sysdep.c:
  -     * keyboard.h:
  -     * keyboard.c:
  -     * frame.h:
  -     * frame.c:
  -     * frame.c: Remove references to MULTI_KBOARD, it is now the default.
  -     * config.in: Regenerate.
  -
  -2008-07-30  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.h (struct w32font_info): Use unicode version of textmetrics.
  -
  -     * w32font.c (w32font_encode_char): Leave as unicode if in range.
  -     (w32font_open_internal): Get unicode version of textmetrics.
  -     Don't enable or disable glyph indices here.
  -     (w32font_open): Disable use of glyph indices.
  -
  -     * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
  -
  -2008-07-30  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * minibuf.c (Vread_buffer_function): Doc fix.
  -
  -2008-07-30  John Paul Wallington  <jpw@pobox.com>
  -
  -     * minibuf.c (read_buffer_completion_ignore_case): New var.
  -     (Fread_buffer): Use it.
  -
  -2008-07-30  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * systty.h (sensemode): Remove empty #if.  Remove reference to
  -     BSD_TERMIOS, unused.
  -
  -     * sysdep.c: Remove reference to DGUX.
  -     (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
  -
  -     * config.in: Regenerate.
  -
  -2008-07-30  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
  -
  -2008-07-29  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
  -     is populated.
  -     (uniscribe_encode_char): Always use uniscribe.
  -     Avoid using context if cache is populated.
  -
  -2008-07-29  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
  -     open menu.
  -
  -     * gtkutil.c (menu_nav_ended): Remove.
  -     (create_menus): Remove signal connect for menu_nav_ended.
  -
  -2008-07-28  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (redisplay_window): Check return value of
  -     compute_window_start_on_continuation_line before forcing a window
  -     start.
  -
  -2008-07-28  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
  -
  -     * w32term.c (w32_enable_unicode_output, cleartype_active):
  -     Remove obsolete display options.
  -     (x_draw_glyph_string_background): Don't use old cleartype_active
  -     workaround.
  -     (w32_initialize): Remove cleartype_active initialization.
  -     (syms_of_w32term): Remove w32_enable_unicode_output initialization.
  -
  -2008-07-28  Andreas Schwab  <schwab@suse.de>
  -
  -     * lisp.h (init_weak_hash_tables, syms_of_font)
  -     (xd_read_queued_messages, syms_of_dbusbind): Declare.
  -     (remove_hash_entry): Don't declare.
  -     * eval.c (maybe_call_debugger): Make static and move before use.
  -     * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
  -     * xdisp.c: Include "gtkutil.h" if USE_GTK.
  -     * xterm.h (x_set_frame_alpha): Declare.
  -
  -2008-07-28  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
  -     (create_menus): Connect selection-done to menu_nav_ended.
  -
  -2008-07-27  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
  -     Set Vx_resource_name to a fallback.  Replace read of 'buffered'
  -     parameter with read of 'alpha' one.
  -     (Qns_frame_parameter): Remove.
  -     * nsselect.m (selection-coding-system)
  -     (next-selection-coding-system, Vselection_coding_system)
  -     (Vnext_selection_coding_system): Drop.
  -
  -2008-07-27  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsfns.m (do-applescript, do_applescript): Rename to
  -     ns-do-applescript, ns_do_applescript, and move within file.
  -
  -2008-07-27  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     Remove support for Mac Carbon.
  -     * mactoolbox.c:
  -     * macterm.h:
  -     * macterm.c:
  -     * macselect.c:
  -     * macmenu.c:
  -     * macgui.h:
  -     * macfns.c:
  -     * mac.c: Remove file.
  -     * s/darwin.h:
  -     * m/intel386.h:
  -     * xfaces.c:
  -     * xdisp.c:
  -     * window.c:
  -     * tparam.c:
  -     * termhooks.h:
  -     * termcap.c:
  -     * term.c:
  -     * syssignal.h:
  -     * sysselect.h:
  -     * sysdep.c:
  -     * process.c:
  -     * lread.c:
  -     * lisp.h:
  -     * keyboard.c:
  -     * image.c:
  -     * fringe.c:
  -     * frame.h:
  -     * frame.c:
  -     * fontset.c:
  -     * font.h:
  -     * font.c:
  -     * fns.c:
  -     * fileio.c:
  -     * emacs.c:
  -     * dispnew.c:
  -     * dispextern.h:
  -     * config.in:
  -     * atimer.c:
  -     * Makefile.in: Remove code for Carbon.
  -
  -2008-07-26  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
  -
  -2008-07-26  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * macterm.h (kCGBitmapByteOrder32Host): New define for
  -     non-universal SDKs.
  -
  -     * image.c (mac_create_cg_image_from_image, image_load_image_io)
  -     [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
  -
  -     * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
  -     [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
  -
  -2008-07-26  David Robinow  <drobinow@gmail.com>  (tiny change)
  -
  -     * w32inevt.c: Include dispextern.h.
  -
  -2008-07-26  Andreas Schwab  <schwab@suse.de>
  -
  -     * print.c (print_object): Fix off-by-one in last change.
  -
  -2008-07-25  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * term.c (syms_of_term): Don't initialize default_orig_pair,
  -     default_set_foreground and default_set_background on Windows.
  -
  -2008-07-25  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
  -     ScriptItemize.  Clean up return value checking.  Remove unused
  -     variables.
  -     (uniscribe_encode_char): Encode non-BMP characters with uniscribe
  -     shaping engine.
  -
  -     * w32font.c (w32font_has_char): Handle the case where we can't
  -     determine the script for a character.
  -
  -2008-07-25  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * term.c (syms_of_term): Initialize default_orig_pair,
  -     default_set_foreground, and default_set_background.
  -
  -     * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
  -     clash (bug#86).
  -     (getloadavg): Callers changed.
  -
  -     * image.c (svg_load_image): Fix last change.
  -     (svg_load_image): Use rsvg_handle_get_dimensions to check that
  -     image size is valid.  Use g_object_unref instead of deprecated
  -     rsvg_handle_free to free rsvg handle.
  -     (x_from_xcolors): Don't initialize pixmap (silence compiler).
  -
  -2008-07-25  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (w32font_encode_char): Encode characters outside BMP as
  -     surrogates before looking up glyph index.
  -     (w32font_text_extents): Encode as surrogates if falling back to
  -     functions that need UTF-16 wide chars.
  -
  -     * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
  -     BMP as surrogates before looking up glyph index.
  -
  -2008-07-25  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * image.c (svg_load_image): Check for failure in return value of
  -     rsvg_handle_get_pixbuf.  Free rsvg handle when done.
  -
  -2008-07-25  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (Fx_select_font): Reverse sense of second arg.
  -
  -2008-07-24  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
  -     (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
  -
  -     * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
  -     (PURESIZE): Use it.
  -
  -2008-07-24  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
  -     * m/alpha.h (TEXT_END):
  -     * m/ibmrs6000.h (TEXT_END):
  -     * m/macppc.h (TEXT_END):
  -     * s/darwin.h (TEXT_END):
  -     * s/msdos.h (TEXT_END): Remove, unused.
  -     * s/gnu-linux.h (BSD_PGRPS): Add a comment.
  -     * s/cygwin.h: Remove comment.
  -
  -     * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
  -     (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
  -     * m/intel386.h (DOT_GLOBAL_START):
  -     * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
  -     (USG): Remove, file not used on USG platforms.
  -
  -     * Makefile.in (HAVE_X11): Remove empty #else.
  -
  -2008-07-24  Andreas Schwab  <schwab@suse.de>
  -
  -     * fileio.c (Finsert_file_contents): Properly adjust undo list
  -     after format conversion.
  -
  -2008-07-24  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
  -     (menu_nav_ended): Remove.
  -     (create_menus): Remove signal connect for menu_nav_ended.
  -     (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
  -     create_menus.
  -     (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
  -
  -2008-07-23  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (w32_enumfont_pattern_entity): Return height consistent
  -     with opened font.
  -     (w32font_open): Set font type to gdi.
  -
  -     * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
  -
  -2008-07-23  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
  -     * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
  -     defines it.
  -     * unexec.c (ADDR_CORRECT): Define unconditionally.
  -
  -     * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
  -
  -     * unexec.c: Remove code depending on !COFF and USG, the file is
  -     not used for such systems.
  -
  -     * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
  -     * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
  -     (LD_SWITCH_SYSTEM_1): Remove, update users.
  -
  -     * s/darwin.h (DATA_END):
  -     * m/intel386.h (DATA_END):
  -     * m/ibmrs6000.h (DATA_END):
  -     * m/alpha.h (DATA_END): Remove, unused.
  -
  -     * config.in: Regenerate.
  -     * s/ms-w32.h (subprocesses): Define unconditionally.
  -     * s/template.h (subprocesses): Update comment.
  -     * s/vms.h (subprocesses):
  -     * s/usg5-4.h (subprocesses):
  -     * s/hpux10-20.h (subprocesses):
  -     * s/gnu-linux.h (subprocesses):
  -     * s/cygwin.h (subprocesses):
  -     * s/bsd-common.h (subprocesses):
  -     * s/aix4-2.h (subprocesses):
  -     * s/darwin.h (subprocesses): Do not define, defined by default now.
  -
  -     * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
  -     Remove all references.
  -     (temacs): Add GNUstep specific ld flags.
  -
  -     * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
  -     similarly to what X does.
  -
  -2008-07-22  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsfns.m (x-list-fonts): Remove.
  -     (syms_of_nsfns): Drop the x-list-fonts declaration.
  -     * nsterm.m: Get rid of remaining "//" comments.
  -
  -2008-07-22  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
  -
  -     * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
  -     (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
  -     (Fns_own_selection_internal, Fx_disown_selection_internal)
  -     (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
  -
  -     * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
  -     ... */' style of docstrings.  Doc fixes.
  -
  -2008-07-22  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * terminfo.c (UP, BC, PC): Undo previous change.
  -
  -     * nsfns.m: Rename ns prefixed functions/variables to the
  -     corresponding x versions.  Update references.
  -
  -2008-07-22  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
  -
  -2008-07-22  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
  -     Remove forwarding functions.
  -     (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
  -     non-static.
  -     (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
  -     non-static.
  -     (ns_frame_parm_handlers): Use the new names.
  -     (syms_of_nsfns): Move to the end of file.
  -
  -     * nsterm.m (syms_of_nsterm): Move to the end of file.
  -
  -     * dispnew.c (init_display): Remove code for X10.
  -
  -2008-07-22  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32proc.c (Fw32_long_file_name): Don't append dir separator to
  -     bare drive.
  -
  -2008-07-22  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsterm.m (syms_of_nsterm): Remove debugging println.
  -
  -2008-07-22  David Reitter  <david.reitter@gmail.com>
  -
  -     * nsfns.m (do_applescript, F_do_applescript): NS version of the
  -     Carbon implementation of the same functionality: execute arbitrary
  -     AppleScript code.
  -
  -2008-07-21  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
  -     (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
  -     (Fx_server_vendor, Fx_server_version, Fx_display_screens)
  -     (Fx_display_mm_height, Fx_display_mm_width)
  -     (Fx_display_backing_store, Fx_display_visual_class)
  -     (Fx_display_save_under, Fx_open_connection)
  -     (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
  -     (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
  -     (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
  -     (Fx_display_pixel_width, Fx_display_pixel_height)
  -     (Fx_display_usable_bounds, Fx_display_planes)
  -     (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
  -     ... */' style of docstrings.
  -
  -2008-07-21  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
  -     on this platform.
  -     (mips):
  -     * m/iris4d.h (mips): Do not define.
  -     * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
  -
  -     * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
  -
  -     * image.c:
  -     * nsfns.m:
  -     * nsselect.m:
  -     * nsterm.h:
  -     * nsterm.m: Rename ns prefixed functions/variables to the
  -     corresponding x versions.  Update references.
  -
  -     * m/ibms390x.h (NO_REMAP): Do not undefine.
  -
  -     * m/amdx86-64.h: Use SOLARIS2 instead of sun.
  -
  -2008-07-21  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * nsfns.m: Change NS to Nextstep in docstrings and error messages.
  -     (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
  -     (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
  -     (Fns_server_vendor, Fns_server_version, Fns_display_screens)
  -     (Fns_display_mm_height, Fns_display_mm_width)
  -     (Fns_display_backing_store, Fns_display_visual_class)
  -     (Fns_display_save_under, Fns_open_connection)
  -     (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
  -     (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
  -     (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
  -     (Fns_display_pixel_width, Fns_display_pixel_height)
  -     (Fns_display_usable_bounds, Fx_display_planes)
  -     (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
  -
  -2008-07-21  Ami Fischman  <ami@fischman.org>  (tiny change)
  -
  -     * print.c (print_object): Check print_depth before searching for
  -     circularities.
  -
  -2008-07-21  Michael Albinus  <michael.albinus@gmx.de>
  -
  -     * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
  -     only sprintf.
  -
  -2008-07-21  Kenichi Handa  <handa@m17n.org>
  -
  -     * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
  -
  -2008-07-20  Andreas Schwab  <schwab@suse.de>
  -
  -     * syntax.c (find_start_pos, find_start_value)
  -     (find_start_value_byte, find_start_begv, find_defun_start)
  -     (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
  -
  -2008-07-20  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * s/sol2-3.h: Insert contents of s/sol2.h.
  -     (LD_SWITCH_SYSTEM): Remove redundant definition.
  -     * s/sol2.h: Remove, unused.
  -
  -2008-07-20  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
  -
  -2008-07-20  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * Makefile.in (ns_appdir): Fix typo in find command.
  -
  -2008-07-20  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * m/intel386.h (NO_REMAP): Do no define for USG, not used.
  -
  -     * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
  -     added not supported anymore.
  -
  -     * s/usg5-4-2.h (LIBS_SYSTEM):
  -     * s/sol2.h (LIBS_SYSTEM): Do not undefine.
  -
  -     * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
  -     * s/lynxos.h (GETPGRP_NO_ARG):
  -     * s/hpux10-20.h (NO_SIOCTL_H):
  -     * s/gnu.h (GETPGRP_NO_ARG):
  -     * s/gnu-linux.h (NO_SIOCTL_H):
  -     * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
  -     * s/cygwin.h (GETPGRP_NO_ARG):
  -     * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
  -     (C_DEBUG_SWITCH): Remove duplicate definition.
  -
  -     * m/ibms390.h: Remove boilerplate comments.
  -
  -     * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
  -
  -     * process.c (HAVE_SERIAL): Consolidate ifdefs.
  -     (wait_reading_process_output): Remove code for SunOS, platform not
  -     supported anymore.  Use SOLARIS2 instead of sun.
  -
  -2008-07-19  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * font.c (font_open_by_name): Under NS, default lface height to zero.
  -     (font_open_for_lface): Under NS, set size based on frame fontsize.
  -     * nsterm.m (EmacsView-changeFont:): Remove some commented code.
  -     * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
  -
  -2008-07-19  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
  -     (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
  -     DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
  -     YES/NO.
  -     * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
  -     * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
  -     * Makefile.in (clean): Clear out build destination dir.
  -
  -2008-07-19  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
  -     xterm, xselect.
  -     * lisp.h: Remove declaration of hash_remove.
  -     * nsgui.h: Remove redefinitions of hash_remove.
  -     * fns.c (hash_remove): Rename to hash_remove_from_table.
  -
  -2008-07-19  Seiji Zenitani  <zenitani@mac.com>
  -
  -     * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
  -     strdup() the family UTF8String before modifying it.
  -
  -2008-07-19  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
  -     NS_FACE_BACKGROUND with 0 instead of nil.
  -     * nsfont.m (nsfont_draw): Same.
  -
  -2008-07-19  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * nsfns.m (ns_set_background_color): Fix crash.
  -
  -2008-07-18  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
  -
  -2008-07-18  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * puresize.h (BASE_PURESIZE): Increase to 1240000.
  -
  -2008-07-17  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * gtkutil.c: Include <config.h> instead of "config.h".
  -
  -     * lisp.h (Foverlay_buffer): Add EXFUN.
  -
  -     * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
  -     child process to complete child_setup.  Undo 2005-09-21 change.
  -
  -     * s/darwin.h: Mention setsid after vfork.
  -
  -2008-07-17  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
  -     Depend on macgui.h.
  -
  -     * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
  -     gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
  -
  -     * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
  -     and f19.
  -     [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
  -
  -     * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
  -     (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
  -     Remove enumerators.
  -
  -     * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
  -     Check if FACE_FROM_ID returns NULL.
  -
  -2008-07-17  David Robinow  <drobinow@gmail.com>  (tiny change)
  -
  -     * w32inevt.c (change_frame_size): Remove extern declaration.
  -     (resize_event, maybe_generate_resize_event): Pass SAFE arg to
  -     change_frame_size.
  -
  -2008-07-17  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * getloadavg.c: Revert last change (2008-07-15).
  -
  -2008-07-17  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
  -     set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc set
  -     from configure.
  -
  -2008-07-17  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * s/sol2.h:
  -     * s/sol2-4.h: Reorganize conditionals.
  -
  -     * ecrt0.c: Remove code depending on m68000, not used anymore.
  -
  -     * fns.c (hash_remove): Make static.
  -     * lisp.h (hash_remove): Don't prototype.
  -
  -     * m/ibmrs6000.h:
  -     * m/ibms390x.h:
  -     * m/macppc.h: Remove boilerplate comments.
  -
  -     * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
  -     Solaris, which does not need them.
  -
  -     * m/vax.h: Remove comments about unsupported systems.
  -
  -     * s/darwin.h: Reorganize ifdefs.
  -
  -2008-07-17  Andreas Schwab  <schwab@suse.de>
  -
  -     * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
  -
  -2008-07-17  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     Use SDATA.  Follow coding convention of placing operators at
  -     beginning of next line rather than end of previous line, and placing
  -     spaces around infix operators.
  -
  -     * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
  -     in case it was defined already.
  -     USE @GNUSTEP_MAKEFILES@ rather than envvars.
  -     * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
  -     ns_default.
  -     (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
  -     Lisp_Objects.
  -     * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
  -     (ns_defined_color, ns_color_to_lisp): Declare.
  -     * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
  -     (Fns_own_selection_internal): Make the big ugly hack more explicit, so
  -     it's accepted even with USE_LISP_UNION_TYPE.
  -     * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
  -     (update_frame_tool_bar): Remove apparently obsolete tests for
  -     non-integerness of f->tool_bar_lines.
  -     (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
  -     hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
  -     * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
  -     (nsfont_open): Don't confuse NULL for Qnil.
  -     * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
  -     * menu.h (find_and_call_menu_selection):
  -     * menu.c (find_and_call_menu_selection): Use just int for vector size.
  -     (find_and_return_menu_selection): Always return something.
  -     * frame.h: Include dispextern.h for Display_Info.
  -     (display_x_get_resource): Declare.
  -
  -2008-07-16  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * syntax.c: Remove stdio.h include accidentally introduced in
  -     Emacs.app commit.
  -     * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
  -     NS_IMPL_COCOA.
  -     * keyboard.c (handle_async_input, input_available_signal): Remove
  -     BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
  -
  -2008-07-16  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
  -     (ns_lisp_to_color): Don't mess with internal Lisp data fields.
  -     (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
  -     Use SDATA.
  -
  -     * keymap.c: Remove all NS-specific code.
  -     (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
  -     (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
  -     where_is_preferred_modifier, return a different value depending on how
  -     preferred is the binding.
  -     (where_is_internal): Adjust accordingly.
  -     (Fwhere_is_internal): Refresh where_is_preferred_modifier.
  -     Adjust to new preferred_sequence_p.
  -     (syms_of_keymap): Declare `where-is-preferred-modifier'.
  -     * keyboard.c (parse_solitary_modifier): Not static any more.
  -     * keyboard.h (parse_solitary_modifier): Declare.
  -
  -2008-07-16  Andreas Schwab  <schwab@suse.de>
  -
  -     * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
  -     of easymenu.
  -
  -2008-07-16  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (move_it_in_display_line): Account for word wrap, so
  -     that we don't move off the line.
  -
  -2008-07-16  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * keyboard.c (Qsuper): Remove.
  -     (parse_menu_item): Don't call where_is_internal specially for NS.
  -
  -2008-07-16  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * s/gnu-linux.h: Remove boilerplate comments.
  -
  -     * m/alpha.h (__ELF__): Consolidate conditions.
  -
  -     * m/m68k.h (linux): Use GNU_LINUX instead.
  -     Remove boilerplate comments.
  -
  -     * m/intel386.h: Undo refactoring from previous change.
  -     (LIB_STANDARD): All systems that define USG define LIB_STANDARD
  -     too, remove dead code.
  -     (linux): Use GNU_LINUX instead.
  -
  -2008-07-16  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32gui.h: Repeat 26 June changes lost by last change.
  -
  -2008-07-16  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * systty.h: Remove code for Aix on 386, unsupported platform.
  -
  -     * s/ms-w32.h: Remove boilerplate comments.
  -     (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
  -
  -     * s/gnu-linux.h (TERM): Remove support.
  -     (HAVE_SYSVIPC): Remove, unused.
  -     (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
  -     for this system.
  -
  -     * process.c: Remove support for IRIS, unused.
  -     Remove support for TERM, not relevant anymore.
  -
  -     * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
  -     used with the definition.
  -
  -     * s/aix4-2.h (static): Do not undef.
  -
  -     * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
  -     only used on Aix.
  -     (HAVE_SYSVIPC): Remove, unused.
  -
  -     * m/hp800.h (CANNOT_DUMP): Do not undef.
  -
  -     * m/alpha.h: Fix comment.
  -
  -     * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
  -     (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
  -     used by this configuration.
  -     * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
  -     * unexec.c: Remove code depending on HPUX and
  -     USG_SHARED_LIBRARIES, not used with this file.  Remove code
  -     depending on IRIS, unused.  Remove if 0-ed code.
  -
  -     * s/template.h: Remove comments about static.
  -
  -     * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
  -     Remove if 0-ed code.
  -     (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
  -     were the same as the default.
  -     * s/vms.h (BAUD_CONVERT): Remove, same as the default.
  -     Remove boilerplate comments.
  -     * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
  -     (HAVE_SYSVIPC): Remove, unused.
  -     (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
  -
  -     * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
  -     Remove boilerplate comments.
  -     * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
  -     Remove boilerplate comments.
  -     * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
  -     Remove boilerplate comments.
  -     * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
  -
  -     * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
  -     USG systems which do not use DATA_SEG_BITS.
  -     Refactor code.  Remove boilerplate comments.
  -
  -     * m/ibms390.h:
  -     * m/m68k.h:
  -     * s/bsd-common.h:
  -     * s/cygwin.h:
  -     * s/darwin.h:
  -     * s/freebsd.h:
  -     * s/gnu.h:
  -     * s/msdos.h: Remove boilerplate comments.
  -
  -     * m/iris4d.h: Remove boilerplate comments and code for systems that
  -     do not use this file.
  -     (IRIS_4D): Remove, unused.
  -
  -     * m/mips.h: Remove boilerplate comments and code for systems that
  -     do not use this file.
  -     (SIGN_EXTEND_CHAR):
  -     * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
  -     * unexmips.c: Remove file, unused.
  -
  -     * editfns.c (Fuser_full_name): Replace the only use of
  -     USER_FULL_NAME with its value.
  -     * config.in: Regenerate.
  -
  -2008-07-16  David Reitter  <david.reitter@gmail.com>
  -
  -     * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
  -     easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
  -
  -2008-07-16  Glenn Morris  <rgm@gnu.org>
  -
  -     * emacs.c (system-type): Doc fix.
  -
  -2008-07-15  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
  -     If the cache doesn't work, let's fix it, rather than work around it.
  -
  -2008-07-15  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * Makefile.in: Correct additions for nsfont.o in last commit.
  -     * nsfont.m: New file (forgot last commit).
  -
  -2008-07-15  Chris Hall  <chris@web.workinglinux.com>  (tiny change)
  -
  -     * callproc.c (set_initial_environment): Initialize
  -     Vprocess_environment under CANNOT_DUMP (fixes crash when
  -     batch-compiling for bootstrap).
  -
  -2008-07-15  Chris Hall  <chris@web.workinglinux.com>  (tiny change)
  -         YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
  -     fix crash due to different init order.
  -
  -2008-07-15  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     Changes and additions for NeXTstep windowing system (Cocoa and
  -     GNUstep) support.
  -
  -     * Makefile.in:
  -     * config.in: Support defines and build commands for NS port.
  -     * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
  -     (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
  -     * dispextern.h: Include nsgui.h and add needed typedefs under NS
  -     windowing.
  -     (struct face): Add synth_ital field.
  -     * dispnew.c: Include nsterm.h when compiling under NS windowing.
  -     (init_display): Initialize Vinitial_window_system to "ns" when so
  -     compiled.
  -     * emacs.c: Include GSConfig.h when compiling under GNUstep.
  -     (display_arg): Use under NS.
  -     (main): Under NS, allocate autorelease pool and handle command line
  -     args.  Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
  -     (standard_args): Add NS-specific args.
  -     (shut_down_emacs): Shut down NS terminal if compiled under NS.
  -     * font.c (DEFAULT_ENCODING): New variable.
  -     (font_find_for_lface): Use it.
  -     (syms_of_font): Load syms_of_nsfont under NS.
  -     * font.h: Declare nsfont_driver when compiled under NS.
  -     * fontset.c: When compiling under NS, include nsterm.h.
  -     (fontset_from_font): Autoconstruct fontset under NS.
  -     * frame.c (various): Under NS, include nsterm.h, add Qns window system
  -     symbol, document and use it.
  -     (do_switch_frame): When for_deletion under Cocoa, add
  -     Fraise_frame(Qnil).
  -     (x_set_frame_parameters): Ensure font attribute changes are picked up.
  -     (x_get_arg): Allow "yes" and "no" as boolean values.
  -     (syms_of_frame): Declare Qns.  Init Vdefault_frame_scroll_bars to
  -     Qright under Cocoa.
  -     (focus-follows-mouse): Default to 0 under NS.
  -     * frame.h (enum output_method): Add output_ns.
  -     (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
  -     (FRAME_EXTERNAL_MENU_BAR): Use under NS.
  -     (FRAME_WINDOW_P): NS-specific definition.
  -     * fringe.c (max_used_fringe_bitmap): Make public.
  -     * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
  -     (getloadavg): Use NeXT code under descendant OS's.
  -     * image.c (includes and header section, x_create_bitmap_from_data)
  -     (x_create_bitmap_from_file, free_bitmap_record, image_background)
  -     (image_background_transparent, x_clear_image_1)
  -     (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
  -     (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
  -     (x_to_xcolors, x_from_xcolors, x_disable_image)
  -     (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
  -     other GUIs, including XPM support using code originally written for
  -     Carbon GUI.
  -     (png_load, jpeg_load, tiff_load, gif_load): Add implementations
  -     using NS API.
  -     (image_ascent): Use font metrics macros instead of direct struct field
  -     access.
  -     * keyboard.c (includes): Add nsterm.h when compiling under NS.
  -     (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
  -     Also, handle NS as GTK for menu bar purposes.
  -     (make_lispy_event): Handle NS as other GUI windowing systems, and as X
  -     toolkit where they differ.
  -     (parse_menu_item): Prefer keybindings using 'super' modifier.  Also,
  -     use cachelist, still needed under NS.
  -     * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
  -     (struct widget_value): Define it here for menu.c.
  -     * keymap.c (includes): Include modifier internals.
  -     (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
  -     NS.
  -     (where_is_internal, Fwhere_is_internal): When compiled under NS, add
  -     support for preferring sequences using certain modifiers, specified by
  -     the FIRSTONLY argument.
  -     * lisp.h (hash_remove): Rename to avoid name clash when compiling
  -     under NS GNUstep implementation.
  -     (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
  -     * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
  -     * menu.c: Include nsterm.h under NS.
  -     (single_menu_item, parse_single_submenu, xmalloc_widget_value)
  -     (free_menubar_widget_tree_value, update_submenu_strings)
  -     (find_and_call_menu_selection): Treat NS as X and NT.
  -     (find_and_return_menu_selection): New function, used for popup menus.
  -     * nsgui.h:
  -     * nsterm.h:
  -     * nsfns.m:
  -     * nsimage.m:
  -     * nsmenu.m:
  -     * nsselect.m:
  -     * nsterm.m: New files.
  -     * process.c (wait_reading_process_output): Under NS, call ns_select()
  -     instead of plain select().
  -     * syntax.c (char_quoted): Under NS, avoid a crash when called near
  -     beginning of buffer.
  -     * sysselect.h (init_process): Rename when compiling under Cocoa to
  -     avoid name conflict.
  -     * termhooks.h (display_info): Add ns_display_info to union.
  -     * terminal.c (Fterminal_live_p): Add ns to terminal types.
  -     * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
  -     COCOA environment.
  -     * unexnext.c: Update to work with mach API on Mac OS X, and to use new
  -     unexec() signature.  (Note, this will dump, but the resulting file
  -     crashes; unexosx is used instead; keeping around for reference and
  -     possible aid in getting dump working under GNUstep.)
  -     * w32gui.h (button_type, widget_value): Remove definitions (now in
  -     keyboard.h).
  -     * window.c: Include nsterm.h when compiling under NS.
  -     * xdisp.c (includes): Include nsterm.h when compiling under NS.
  -     (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
  -     other GUI windowing systems.
  -     (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
  -     GTK.
  -     (x_consider_frame_title): Under NS, set icon type and frame
  -     modified-state indicator; use ns_set_name_as_filename() when using
  -     formatted title.
  -     (update_window_cursor): Make public when compiling under NS.
  -     (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
  -     (hourglass_atimer, Vhourglass_delay
  -     * xfaces.c (header section, init_frame_faces, clear_font_table)
  -     (defined_color, unload_color, x_face_list_fonts)
  -     (prepare_face_for_display): Add NS support parallel to other GUIs.
  -     Emulate GCs like other non-X GUIs.
  -     (split_font_name): Don't lowercase font name under NS.
  -     (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
  -     under NS.
  -     * s/darwin.h: Add support for compilation under NS.
  -
  -2008-07-15  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
  -     (w32_show_hourglass): Rename from show_hourglass.
  -     (w32_hide_hourglass): Rename from hide_hourglass.
  -     (DEFAULT_HOURGLASS_DELAY): Revert from last change.
  -     (Vhourglass_delay): Declare extern.
  -     (hourglass_started): Remove.
  -
  -     * xdisp.c (Vhourglass_delay): Remove static.
  -     (hourglass_started, start_hourglass, cancel_hourglass):
  -     Don't include these versions on WINDOWSNT.
  -
  -2008-07-15  Adrian Robert  <Adrian.B.Robert@gmail.com>
  -
  -     * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
  -     variables (formerly in xfns.c).
  -     (show_hourglass, hide_hourglass): New prototypes (same).
  -     * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
  -     (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
  -     in xfns.c).
  -     (syms_of_xdisp): Declare/initialize display-hourglass,
  -     hourglass-delay.  Initialize hourglass_atimer, hourglass_shown_p.
  -     (hourglass_started, start_hourglass, cancel_hourglass): New functions,
  -     formerly in xfns.c.
  -     * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
  -     (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
  -     (start_hourglass, cancel_hourglass): Remove.
  -     (show_hourglass, hide_hourglass): Remove prototypes and static
  -     modifiers.
  -     (syms_of_xfns): Remove display-hourglass, hourglass-delay,
  -     hourglass_atimer, hourglass_shown_p declaration/initialization.
  -     * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
  -     (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
  -     (start_hourglass, cancel_hourglass): Remove.
  -     (show_hourglass, hide_hourglass): Remove prototypes and static
  -     modifiers.
  -     (syms_of_macfns): Remove display-hourglass, hourglass-delay,
  -     hourglass_atimer, hourglass_shown_p declaration/initialization.
  -     * w32fns.c (display_hourglass_p, Vhourglass_delay)
  -     (DEFAULT_HOURGLASS_DELAY): Remove.
  -     (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
  -     hourglass_shown_p declaration/initialization.
  -
  -2008-07-14  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32fns.c (w32_get_arg): Remove wrapper function.
  -     (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
  -     directly.
  -     (Fx_create_frame): Sync with xfns.c.  Use x_get_arg directly.
  -
  -2008-07-14  Kenichi Handa  <handa@m17n.org>
  -
  -     * xfont.c (xfont_open): Add workaround for X's bug.
  -
  -2008-07-14  Emanuele Giaquinta  <emanuele.giaquinta@gmail.com>  (tiny change)
  -
  -     * fontset.c: Include <stdio.h> unconditionally.
  -
  -2008-07-13  Michael Albinus  <michael.albinus@gmx.de>
  -
  -     * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
  -     for filtering.
  -
  -2008-07-13  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * s/vms.h: Use __GNUC__ instead of _GNUC_.
  -
  -     * m/macppc.h:
  -     * m/alpha.h: Use GNU_LINUX instead of LINUX.  Reorganize conditionals.
  -
  -     * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
  -     (SPECIAL_EMACS_INT):
  -     * m/ia64.h (SPECIAL_EMACS_INT):
  -     * m/amdx86-64.h (SPECIAL_EMACS_INT):
  -     * s/gnu.h (NLIST_STRUCT):
  -     * s/aix4-2.h (X11R5_INHIBIT_I18N):
  -     * s/gnu-linux.h (LINUX):
  -     * s/msdos.h (HAVE_FACES):
  -     * s/ms-w32.h (HAVE_FACES): Don't define, unused.
  -
  -     * systty.h:
  -     * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
  -     anymore.
  -
  -2008-07-12  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * syswait.h: Remove old if 0 code.  Do not define WAITTYPE, it was
  -     always defined as int.
  -
  -     * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
  -     * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
  -     * s/gnu-linux.h (HAVE_WAIT_HEADER):
  -     * s/freebsd.h (HAVE_WAIT_HEADER):
  -     * s/bsd-common.h (HAVE_UNION_WAIT):
  -     * s/aix4-2.h (HAVE_WAIT_HEADER):
  -     * m/mips.h (HAVE_UNION_WAIT):
  -     * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
  -     (COFF, static): Do not define, they are undefined later in the file.
  -
  -     * process.c (update_status): Don't use a union.
  -     (status_convert):
  -     (sigchld_handler): Use int instead of WAITTYPE.
  -
  -2008-07-12  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * indent.c (Fvertical_motion): Restore hscroll before moving to
  -     goal column.
  -
  -2008-07-11  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * lisp.h: Remove left over code.
  -
  -2008-07-11  Andreas Schwab  <schwab@suse.de>
  -
  -     * lisp.h: Fix logic in last change.
  -
  -     * menu.h: New file.
  -     * menu.c: Include it.
  -     * xmenu.c: Likewise.
  -     * Makefile.in: Update dependencies.
  -
  -2008-07-11  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (fontset_from_font): Cancel the previous change.
  -
  -2008-07-11  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * lisp.h:
  -     * w32heap.c:
  -     * emacs.c:
  -     * alloc.c: Replace all references of NO_UNION_TYPE with
  -     USE_LISP_UNION_TYPE.
  -
  -     * m/xtensa.h (NO_UNION_TYPE):
  -     * m/vax.h (NO_UNION_TYPE):
  -     * m/template.h (NO_UNION_TYPE):
  -     * m/sparc.h (NO_UNION_TYPE):
  -     * m/mips.h (NO_UNION_TYPE):
  -     * m/macppc.h (NO_UNION_TYPE):
  -     * m/m68k.h (NO_UNION_TYPE):
  -     * m/iris4d.h (NO_UNION_TYPE):
  -     * m/intel386.h (NO_UNION_TYPE):
  -     * m/ibms390x.h (NO_UNION_TYPE):
  -     * m/ibms390.h (NO_UNION_TYPE):
  -     * m/ibmrs6000.h (NO_UNION_TYPE):
  -     * m/ia64.h (NO_UNION_TYPE):
  -     * m/hp800.h (NO_UNION_TYPE):
  -     * m/arm.h (NO_UNION_TYPE):
  -     * m/amdx86-64.h (NO_UNION_TYPE):
  -     * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
  -     defining it the same.
  -
  -2008-07-10  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
  -
  -2008-07-10  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * fileio.c:
  -     * sysdep.c
  -     * systty.h:
  -     * m/ibmrs6000.h:
  -     * m/iris4d.h:
  -     * s/aix4-2.h:
  -     * s/freebsd.h:
  -     * s/gnu-linux.h:
  -     * s/hpux10-20.h:
  -     * s/hpux11.h:
  -     * s/netbsd.h:
  -     * s/sol2-3.h:
  -     * s/sol2-4.h:
  -     * s/sol2.h:
  -     * s/usg5-4.h:
  -     * s/vms.h: Remove references to unused variables.
  -
  -2008-07-10  Andreas Schwab  <schwab@suse.de>
  -
  -     * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
  -     pattern before matching the generic family.
  -
  -2008-07-10  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * unexec.c:
  -     * s/vms.h:
  -     * s/usg5-4-2.h:
  -     * s/sol2-5.h:
  -     * s/freebsd.h:
  -     * s/darwin.h: Remove dead code.
  -
  -     * m/template.h:
  -     * m/sparc.h:
  -     * m/mips.h:
  -     * m/m68k.h:
  -     * m/iris4d.h:
  -     * m/intel386.h:
  -     * m/ibms390x.h:
  -     * m/ibms390.h:
  -     * m/ia64.h:
  -     * m/hp800.h:
  -     * m/arm.h:
  -     * m/amdx86-64.h: Remove dead code and references to unused
  -     and compiler defined symbols.
  -
  -     * unexmips.c:
  -     * unexelf.c: Remove references to desupported systems.
  -
  -     * m/powermac.h: Remove file, it is now identical to m/macppc.h.
  -
  -     * m/powermac.h: Remove boilerplate comments.
  -     (NO_REMAP): Remove unused definition.
  -
  -     * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
  -     define them.
  -
  -2008-07-10  Kenichi Handa  <handa@m17n.org>
  -
  -     * xfont.c (xfont_open): Log the reason of failure.
  -
  -2008-07-09  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * fontset.c (fontset_get_font_group):
  -     * font.c (font_check_otf): Specify argument types.
  -
  -2008-07-09  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (detect_coding_utf_8): Set detect_info->found only when
  -     non-ASCII char is found.
  -
  -     * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
  -     (reorder_font_vector): Change the arg preferred_family to font.
  -     Prefer the spec matching with font.
  -     (fontset_get_font_group): New function.
  -     (fontset_find_font): Change the format of an element of a realized
  -     fontset.  Use fontset_get_font_group.
  -     (fontset_font): Try the current fontset, the default fontset, the
  -     fallbacks of the current fontset, and the fallbacks of the default
  -     fontset in this order.
  -     (face_for_char): Delete the shortcut to use the current font.
  -     (fontset_from_font): Don't set fonts for Latin in the fontset.
  -
  -     * font.h (font_make_object, font_match_p): Adjust prototypes.
  -
  -     * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
  -
  -     * font.c (font_make_object): New arg entity and pixelsize.
  -     (font_check_otf_features, font_check_otf): New functions.
  -     (font_match_p): Check :lang, :script, and :otf properties.
  -
  -     * xfont.c (xfont_open): Adjust it for the change of
  -     font_make_object.
  -     (xfont_text_extents): Fix initial setting of metrics.
  -
  -     * ftfont.c (struct ftfont_info): New member index, delete member
  -     fc_charset_idx.  Make the member order compatible with struct
  -     xftfont_info.
  -     (fc_charset_table): Change charset names to registry names.
  -     (ftfont_pattern_entity): Delete the args registry and
  -     fc_charset_idx.  Change the value of :font-entity property
  -     to (FONTNAME . INDEX).  Always set :registry property to
  -     `iso10646-1'.
  -     (struct ftfont_cache_data): New struct.
  -     (ftfont_lookup_cache): New arg for_face.
  -     (ftfont_get_fc_charset, ftfont_get_otf): New functions.
  -     (ftfont_driver): Set the member otf_capability.
  -     (ftfont_get_charset): Adjust it for the change of
  -     fc_charset_table.
  -     (OTF_TAG_SYM): New macro.
  -     (ftfont_spec_pattern): Delete the arg fc_charset_idx.  Adjust it
  -     for the change of fc_charset_table.
  -     (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
  -     ftfont_pattern_entity.  Add FC_INDEX to objset.
  -     (ftfont_match): Adjust it for the change of ftfont_spec_pattern
  -     and ftfont_pattern_entity.
  -     (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
  -     font_make_object, struct ftfont_info.
  -     (ftfont_has_char): Use ftfont_get_fc_charset.
  -     (ftfont_otf_features, ftfont_otf_capability): New functions.
  -     (ftfont_shape): Use ftfont_get_otf.
  -     (ftfont_text_extents): Fix initial setting of metrics.
  -
  -     * xftfont.c (struct xftfont_info): New member ft_size.  Make the
  -     member order compatible with struct ftfont_info.
  -     (xftfont_open): Add FC_CHARSET to the pattern.  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.
  -     (syms_of_xftfont): Don't set members anchor_point and shape of
  -     xftfont_driver.
  -
  -     * w32uniscribe.c (uniscribe_open): Adjust it for the change of
  -     font_make_object.
  -
  -     * w32font.c (w32font_open): Adjust it for the change of
  -     font_make_object.
  -     (w32font_open_internal): Don't set properties of font_object here.
  -
  -2008-07-08  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * macfns.c (x_create_tip_frame):
  -     * w32fns.c (x_create_tip_frame):
  -     * xfns.c (x_create_tip_frame): Pass parameter argument to
  -     face-set-after-frame-default.
  -
  -     * xfaces.c (Finternal_merge_in_global_face): Save merged
  -     attributes for the default face back into the face vector.
  -
  -2008-07-08  Andreas Schwab  <schwab@suse.de>
  -
  -     * fontset.h: Declare fontset_from_font.  Don't declare
  -     new_fontset_from_font and fontset_from_font_name.
  -     * xterm.c: Include "fontset.h".
  -     * Makefile.in (xterm.o): Update dependencies.
  -
  -2008-07-08  Glenn Morris  <rgm@gnu.org>
  -
  -     * m/sparc.h: Define __sparc__ rather than sparc.  (Bug#507.)
  -     * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
  -
  -2008-07-07  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
  -     (x_set_frame_parameters): Don't bind it.
  -
  -2008-07-07  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * w32fns.c (map_w32_filename): Declare extern.
  -
  -2008-07-07  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32term.c (WS_EX_LAYERED): Define if not already.
  -
  -2008-07-06  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xfaces.c (set_font_frame_param): Don't try to set the font
  -     parameter if it is still unspecified in the lface.
  -
  -2008-07-05  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xfaces.c (Finternal_merge_in_global_face): Don't realize default
  -     face if it didn't already exist.
  -
  -     * xdisp.c (try_window_id): Give up if word-wrapping is on.
  -
  -2008-07-05  Andreas Schwab  <schwab@suse.de>
  -
  -     * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
  -
  -2008-07-05  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
  -     word-wrapping.
  -     (IT_DISPLAYING_WHITESPACE): New macro.
  -     (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
  -     when word-wrapping.  Simplify word-wrapping logic.  Use correct
  -     pixel positions when saving copies of the iterator.
  -     (display_line): Use proper wrap point if the last character on a
  -     line was preceded by whitespace.
  -
  -2008-07-04  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
  -
  -2008-07-04  Kenichi Handa  <handa@m17n.org>
  -
  -     * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
  -
  -     * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
  -
  -2008-07-02  Jason Rumney  <jasonr@gnu.org>
  -
  -     * xfns.c (syms_of_xfns): Only define x-select-font when both
  -     HAVE_FREETYPE and USE_GTK.
  -
  -     * xdisp.c (next_element_from_display_vector): Move assignment out
  -     of if statement.
  -
  -2008-07-02  Toru Tsuneyoshi  <t_tuneyosi@hotmail.com>
  -
  -     * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
  -
  -     * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
  -     (syms_of_fileio): Initialize and export them.
  -     (Fdelete_directory, Fdelete_file): Optionally delete via trash.
  -
  -     * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
  -     (Fsystem_move_file_to_trash): New function.
  -     (syms_of_w32fns): Export it to lisp.
  -
  -2008-07-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (w32font_text_extents): Don't count overhang as part
  -     of width.
  -
  -2008-06-30  Miles Bader  <miles@gnu.org>
  -
  -     * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
  -     Add `avoid_cursor_p' field.
  -
  -     * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
  -     (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
  -     (append_glyph, append_composite_glyph, produce_image_glyph)
  -     (append_stretch_glyph): Initialize avoid_cursor_p.
  -     (get_it_property): Rename from `get_line_height_property'.
  -     (x_produce_glyphs): Use get_it_property.
  -     (handle_line_prefix, push_display_prop): New functions.
  -     (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
  -     (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
  -     New variables.
  -     (syms_of_xdisp): Initialize them.
  -
  -2008-06-30  Kenichi Handa  <handa@m17n.org>
  -
  -     * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
  -     XftDefaultSubstitute (they are called in XftFontMatch).
  -     (xftfont_open): Fix args to ftfont_font_format.
  -
  -     * ftfont.c (fc_charset_table): New member lang.
  -     (ftfont_resolve_generic_family): New arg pattern.
  -     (ftfont_spec_pattern): Check fc_charset_table[]->lang.
  -     (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
  -     (ftfont_open): Fix args to ftfont_font_format.
  -     (ftfont_font_format): New arg filename.
  -
  -2008-06-30  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xfaces.c (Finternal_merge_in_global_face): If default face was
  -     modified, realize it again.  Update the font face attribute.
  -
  -2008-06-29  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32term.c (x_set_frame_alpha): Fix logic.
  -
  -2008-06-29  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (Finternal_char_font): Return font-object instead of
  -     font-name.
  -
  -     * composite.c (get_composition_id): Fix the width calculation for TAB.
  -
  -2008-06-29  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * indent.c (Fvertical_motion): Properly handle float column arg.
  -
  -2008-06-28  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
  -     (pfnSetLayeredWindowAttributes): New function pointer.
  -     (w32_initialize): Initialize it when supported.
  -     (x_set_frame_alpha): New function.
  -
  -     * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
  -     (w32_frame_parm_handlers): Set alpha handler.
  -
  -     * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
  -
  -2008-06-27  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
  -     (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
  -     (w32_to_x_charset, x_to_w32_charset)
  -     (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
  -     (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
  -     (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
  -     (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
  -     (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
  -     (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
  -     (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
  -     (Qw32_charset_unicode): Remove.
  -     (syms_of_w32fns): Update for above changes.
  -
  -     * w32font.c (w32_to_x_charset, x_to_w32_charset)
  -     (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
  -     (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
  -     (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
  -     (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
  -     (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
  -     (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
  -     (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
  -     (syms_of_w32font): Update for above changes.
  -
  -2008-06-27  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * s/usg5-4.h: Fix previous change: keep the correct branch of a
  -     removed #if.
  -     (USG_SHARED_LIBRARIES): Remove duplicate definition.
  -
  -2008-06-26  Juanma Barranquero  <lekktu@gmail.com>
  -         Eli Zaretskii  <eliz@gnu.org>
  -
  -     * makefile.w32-in (LOCAL_FLAGS):
  -     Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
  -
  -     * sysdep.c (_spawnlp, _getpid):
  -     Declare with explicit _cdecl instead of _CRTAPI1.
  -
  -     * editfns.c (Fget_internal_run_time):
  -     Check for WINDOWSNT with #ifdef, not #if.
  -
  -2008-06-26  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
  -
  -     * w32term.c (x_draw_glyph_string_foreground)
  -     (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
  -     Use FONT_HANDLE macro.
  -     (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
  -
  -     * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
  -     (uniscribe_encode_char): Use FONT_HANDLE macro.
  -
  -     * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
  -     (w32font_text_extents): Use precast w32_font.
  -     (w32font_close): Free cached metrics.
  -     (w32font_open_internal): Allocate space for name on stack.
  -
  -2008-06-26  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (extend_face_to_end_of_line): Fix last change.
  -
  -2008-06-26  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
  -     (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
  -
  -2008-06-26  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
  -
  -2008-06-26  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32bdf.c, w32bdf.h: Remove obsolete files.
  -
  -     * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
  -
  -     * w32gui.h: Don't include w32bdf.h.
  -     (XCharStruct, enum w32_char_font_type, W32FontStruct):
  -     Remove obsolete font support.
  -
  -     * w32font.h (struct w32font_info): Remove compat_w32_font.
  -     Add hfont member.
  -     (FONT_COMPAT): Remove obsolete macro.
  -
  -     * w32font.c (w32font_close): Remove compat code.  Delete hfont member.
  -     (w32font_encode_char, w32font_text_extents): Use new hfont member.
  -     (w32font_open_internal): Remove compat code.  Set new hfont member.
  -     (Fx_select_font): Use new hfont member.
  -
  -     * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
  -     (uniscribe_encode_char): Use new hfont member.
  -
  -     * w32term.c (x_draw_glyph_string_foreground)
  -     (x_draw_composite_glyph_string_foreground): Use new hfont member.
  -     (x_draw_glyph_string): Use metrics in w32font_info.
  -
  -2008-06-26  Kenichi Handa  <handa@m17n.org>
  -
  -     * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
  -
  -2008-06-26  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * unexnext.c:
  -     * m/ews4800.h:
  -     * m/hp9000s300.h:
  -     * m/ibm370aix.h:
  -     * m/mips-siemens.h:
  -     * m/ncr386.h:
  -     * m/next.h:
  -     * m/pmax.h:
  -     * m/powerpcle.h:
  -     * m/tandem-s2.h:
  -     * s/386bsd.h:
  -     * s/bsd386.h:
  -     * s/bsd4-1.h:
  -     * s/bsd4-2.h:
  -     * s/bsdos2-1.h:
  -     * s/bsdos2.h:
  -     * s/bsdos3.h:
  -     * s/bsdos4.h:
  -     * s/nextstep.h:
  -     * s/ultrix4-3.h:
  -     * s/usg5-0.h:
  -     * s/usg5-2-2.h:
  -     * s/usg5-2.h:
  -     * s/usg5-4-3.h:
  -     * s/ux4800.h:
  -     * s/uxpds.h:
  -     * s/uxpv.h: Remove support for obsolete systems.
  -     * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
  -     Remove, insert contents in s/hpux10-20.h.
  -     * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
  -     Remove, insert contents in s/aix4-2.h.
  -     * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
  -     * s/bsd4-3.h: Rename to ...
  -     * s/bsd-common.h: ... this.
  -     * data.c:
  -     * doc.c:
  -     * ecrt0.c:
  -     * emacs.c:
  -     * fileio.c:
  -     * floatfns.c:
  -     * keyboard.c:
  -     * mem-limits.h:
  -     * print.c:
  -     * process.c:
  -     * sysdep.c:
  -     * syssignal.h:
  -     * systty.h:
  -     * syswait.h:
  -     * term.c:
  -     * unexec.c:
  -     * unexelf.c:
  -     * unexhp9k800.c:
  -     * m/hp800.h:
  -     * m/ibmrs6000.h:
  -     * m/mips.h:
  -     * m/vax.h:
  -     * s/darwin.h:
  -     * s/freebsd.h:
  -     * s/gnu.h:
  -     * s/ms-w32.h:
  -     * s/msdos.h:
  -     * s/netbsd.h:
  -     * s/template.h: Remove references to obsolete variables.
  -
  -     * Makefile.in: Add dependencies for all unexec files.
  -     (admindir): Remove unused variable.
  -     (UNEXEC_SRC): Remove references.
  -
  -2008-06-25  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xfns.c (x_default_font_parameter): If Xft is available, first
  -     try Monospace-12 for the default font.
  -
  -2008-06-25  Jason Rumney  <jasonr@gnu.org>
  -
  -     * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
  -
  -2008-06-25  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
  -
  -     * buffer.c (syms_of_buffer): Remove default-word-wrap.
  -
  -2008-06-25  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
  -     <scroll-conservatively>: Fix typo in docstring.
  -
  -     * xselect.c (Fx_send_client_event): Doc fix.
  -
  -2008-06-25  Kenichi Handa  <handa@m17n.org>
  -
  -     * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
  -
  -     * font.c (font_parse_fcname): Remove unused variables.
  -     (font_sort_entites): Delete the arg SPEC.  Caller changed.
  -     Fix for the case of ! best_only.
  -     (font_delete_unmatched): Check DPI and AVGWIDTH too.
  -
  -     * lisp.h (Fstring_to_unibyte): EXFUN it.
  -
  -     * character.h (str_to_unibyte): Extern it.
  -
  -     * character.c (str_to_unibyte): New function.
  -
  -     * fns.c (Fstring_to_unibyte): New function.
  -     (syms_of_fns): Defsubr it.
  -
  -2008-06-24  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_score): Even if the PIXEL_SIZE is the same, check
  -     DPI too.
  -     (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
  -
  -2008-06-24  Andreas Schwab  <schwab@suse.de>
  -
  -     * Makefile.in (${lispsource}loaddefs.el): Rename from
  -     ../lisp/loaddefs.el.
  -     (bootstrap-clean): Do what distclean does but don't remove
  -     Makefile.
  -     (distclean): Depend on bootstrap-clean and remove Makefile.
  -
  -2008-06-24  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * buffer.h (struct buffer): New member word_wrap.
  -
  -     * buffer.c (syms_of_buffer): New variables default-word-wrap and
  -     word-wrap.
  -     (init_buffer_once): Initialize them.
  -
  -     * dispextern.h (struct it): Replace bool truncate_lines_p with a
  -     line_wrap enum possessing three possible values.
  -
  -     * termopts.h: Replace truncate_partial_width_windows with
  -     Vtruncate_partial_width_windows.
  -
  -     * dispnew.c (direct_output_for_insert): Avoid direct output when
  -     inserting a space with word wrap on.
  -
  -     * indent.c (compute_motion): Obey integer values of
  -     truncate-partial-width-windows.
  -
  -     * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
  -     replacing truncate_partial_width_windows.
  -     (init_iterator): If Vtruncate_partial_width_windows is an integer,
  -     truncate only if the window width is below that integer.
  -     (start_display, resize_mini_window, produce_stretch_glyph)
  -     (display_string, move_it_in_display_line_to): Use line_wrap.
  -     (back_to_previous_visible_line_start, reseat_1): Reset
  -     string_from_display_prop_p.
  -     (display_line): Extend default face to end of line when wrapping.
  -
  -2008-06-24  Kim F. Storm  <storm@cua.dk>
  -
  -     * xdisp.c (display_line, move_it_in_display_line_to): Add ability
  -     to wrap continued lines at word boundaries.
  -
  -2008-06-24  Jason Rumney  <jasonr@gnu.org>
  -
  -     * font.c (Ffont_face_attributes): Multiply pixel size before point
  -     conversion to avoid multiplying rounding error.
  -
  -2008-06-23  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32term.c (x_draw_glyph_string_background)
  -     (x_draw_glyph_string): Remove old bdf font code.
  -
  -     * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
  -
  -2008-06-22  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_find_for_lface): Try the adstyle specified in
  -     the property of LFACE_FONT of LFACE (if any).
  -
  -2008-06-21  Seiji Zenitani  <zenitani@mac.com>
  -         Ryo Yoshitake  <ryo@shiftmode.net>
  -
  -     * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
  -
  -2008-06-22  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
  -     Use $(BOOTSTRAPEMACS) rather than witness-emacs.
  -     (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
  -     (witness-emacs): Remove.
  -     (lisp, shortlisp): Move loaddefs.el earlier.
  -     (mostlyclean): Forget about witness-emacs.
  -
  -2008-06-22  Glenn Morris  <rgm@gnu.org>
  -
  -     * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
  -     (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
  -
  -2008-06-21  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * Makefile.in (PRECOMP): Remove.
  -     (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
  -     (witness-emacs): Run `compile-first'.
  -     (.el.elc): Use the new compile-onefile target.
  -
  -2008-06-21  Kenichi Handa  <handa@m17n.org>
  -
  -     * xftfont.c (xftfont_open): Handle QCembolden only when
  -     FC_EMBOLDEN is defined.
  -
  -2008-06-21  Andreas Schwab  <schwab@suse.de>
  -
  -     * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
  -     (.el.elc): Likewise.
  -
  -2008-06-21  Miles Bader  <miles@gnu.org>
  -
  -     * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
  -     build dir, not the lisp source dir.
  -
  -2008-06-21  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
  -     (bootstrapclean): Remove.
  -     (.el.elc): New rule.
  -     (PRECOMP): New var.
  -     (../lisp/subdirs.el): Remove.
  -     (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
  -     (witness-emacs): New target.
  -     (mostlyclean): Remove witness-emacs as well.
  -     (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
  -     Add witness-emacs dependency.
  -
  -2008-06-20  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * font.c (Ffont_face_attributes): Omit key-attribute pairs not
  -     defined by the font.
  -
  -2008-06-20  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
  -     (bootstrap-clean): New target that keeps TAGS around.
  -     (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
  -     (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
  -
  -2008-06-20  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
  -     Remove obsolete font code.
  -
  -     * w32font.c (font_matches_spec): Use csb bitfield from font signature
  -     to determine language support.
  -
  -2008-06-20  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * sysdep.c (cfsetspeed): New fun extracted from the code.
  -     (cfmakeraw): Move before first use.
  -
  -2008-06-20  Angelo Graziosi  <angelo.graziosi@alice.it>  (tiny change)
  -
  -     * sysdep.c (cfmakeraw): Provide fallback implementation.
  -     (serial_configure): Provide fallback implementation of cfsetspeed.
  -
  -2008-06-20  Kenichi Handa  <handa@m17n.org>
  -
  -     * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
  -     the pattern.
  -
  -     * fontset.c (fontset_from_font): Copy font_spec before changing
  -     the elements.
  -
  -     * xfns.c (x_default_font_parameter): Try "monospace-12" too.
  -
  -2008-06-20  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
  -     for explicit `font' parameters.
  -
  -     * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
  -
  -2008-06-19  Kenichi Handa  <handa@m17n.org>
  -
  -     * frame.c: Include <ctype.h>.
  -     (x_set_font_backend): Allow spacing characters in the X resource
  -     for FontBackend.
  -
  -2008-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * w32fns.c, xfns.c (Qfont_param): New var.
  -     (syms_of_w32fns): Initialize it.
  -     (x_default_font_parameter): Record explicit `font' into
  -     `font-parameter'.
  -
  -2008-06-18  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_parse_xlfd): Fix previous change.
  -     (font_parse_fcname): Don't use :fc-unknown-spec.
  -     (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
  -     (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
  -     (font_add_log): Prepend the driver name to the resulting fonts.
  -
  -     * ftfont.c (ftfont_pattern_entity): New arg extra.  Caller changed.
  -     (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
  -     (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
  -
  -     * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
  -     (QCembolden): New variables.
  -     (syms_of_xftfont): DEFSYM them.
  -     (xftfont_open): Call XftFontMatch.  Don't trust the result of
  -     XftTextExtents8 if the pixel_size is less than 5.
  -
  -2008-06-18  Andreas Schwab  <schwab@suse.de>
  -
  -     * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
  -     (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
  -
  -2008-06-18  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (w32font_list, w32font_match): Add logging.
  -
  -     * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
  -
  -2008-06-17  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * font.c (font_parse_fcname): Store divider characters for
  -     unknown-spec list.  For known key symbols, intern using correct
  -     symbol name.
  -
  -2008-06-17  Kenichi Handa  <handa@m17n.org>
  -
  -     * xfaces.c (realize_default_face): If the frame is not on window
  -     system, set the fontset of face to nil.
  -
  -2008-06-17  Naohiro Aota  <nao.aota@gmail.com>  (tiny change)
  -
  -     * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
  -
  -2008-06-16  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
  -     (build_font_name_from_vector): Delete externs.
  -
  -     * xfaces.c (struct font_name): Don't declare.
  -
  -2008-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
  -
  -2008-06-16  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * font.c (font_parse_fcname): Fix handling of unknown-spec string.
  -
  -2008-06-16  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * font.c (Ffont_spec): Fix usage in docstring.
  -     (Ffont_face_attributes): Doc fix.
  -
  -2008-06-16  Andreas Schwab  <schwab@suse.de>
  -
  -     * font.c (Ffont_face_attributes): Fix definition.
  -
  -2008-06-16  Jason Rumney  <jasonr@gnu.org>
  -
  -     * font.h (font_style_symbolic_from_value): Remove.
  -
  -     * font.c (font_style_symbolic_from_value): Remove.
  -     (font_style_symbolic): Revert to pre 2008-06-13 version.
  -
  -     * w32font.c (w32_to_fc_weight): New function.
  -     (w32font_full_name, logfont_to_fcname): Use it.
  -
  -2008-06-16  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_check_object): Delete it.
  -     (font_clear_cache): Check if a font-object is alive.
  -     (font_open_entity): Likewise.  Set FONT_OBJLST_INDEX of a
  -     font-object to nil.
  -     (font_close_object): Don't check FONT_CLOSE_OBJECT.
  -     (font_at): Don't call font_check_object.
  -     (Ffont_get): Return a symbol for :weight, :slant, and :width.
  -
  -2008-06-16  Katsumi Yamaoka  <yamaoka@jpl.org>
  -
  -     * puresize.h (BASE_PURESIZE): Increase to 1230000.
  -
  -2008-06-16  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
  -
  -2008-06-15  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * font.c (font_parse_fcname): Only one decimal point.
  -     (font_unparse_fcname): Handle data in family and foundry indices
  -     as symbols, not strings.
  -     (font_unparse_gtkname, Ffont_face_attributes): New functions.
  -
  -     * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
  -
  -     * font.h (font_unparse_gtkname): Add prototype.
  -
  -2008-06-15  Naohiro Aota  <nao.aota@gmail.com>  (tiny change)
  -
  -     * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
  -
  -2008-06-15  Andreas Schwab  <schwab@suse.de>
  -
  -     * font.c (font_update_drivers): Fix crash when no drivers match.
  -
  -2008-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
  -     * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
  -
  -2008-06-14  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
  -
  -2008-06-13  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * process.c (Fserial_process_configure, Fprocess_send_eof):
  -     Use EQ to compare Lisp_Objects.
  -
  -2008-06-13  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32fns.c (Fw32_select_font): Remove old font API function.
  -
  -     * w32font.c (logfont_to_fcname): New function.
  -     (Fx_select_font): New font dialog function compatible with
  -     GTK/fontconfig version.
  -
  -     * font.c (font_style_symbolic_from_value): New function.
  -     (font_style_symbolic): Use it.
  -
  -     * font.h (font_style_symbolic_from_value): Declare new function.
  -
  -2008-06-13  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * font.c (syms_of_font) <font-weight-table, font-slant-table>:
  -     <font-width-table>: Fix typos in docstrings.
  -
  -2008-06-13  Daniel Engeler  <engeler@gmail.com>
  -
  -     These changes add serial port access.
  -     * process.c: Add HAVE_SERIAL.
  -     (Fdelete_process, Fprocess_status, Fset_process_buffer)
  -     (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
  -     (list_processes_1, select_wrapper, Fstop_process)
  -     (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
  -     (status_notify): Modify to handle serial processes.
  -     [HAVE_SERIAL] (Fserial_process_configure)
  -     [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
  -     New functions.
  -     * process.h (struct Lisp_Process): Add `type'.
  -     * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
  -     New functions.
  -     * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
  -     serial ports.
  -     (serial_open, serial_configure): New functions.
  -     * w32.h: Add FILE_SERIAL.
  -     (struct _child_process): Add ovl_read, ovl_write.
  -
  -2008-06-13  Kenichi Handa  <handa@m17n.org>
  -
  -     * dispextern.h (enum lface_attribute_index): New member
  -     LFACE_FOUNDRY_INDEX.
  -
  -     * font.c (font_score): Delete arg alternate_families.  Check only
  -     weight, slant, width, and size.  Ignore the difference of alias
  -     style symbols.
  -     (font_sort_entites): Adjust for the above change.  Reflect the
  -     order of font-driver to scores.
  -     (font_list_entities): Don't check alternate_familes here.
  -     (font_clear_prop): Handle foundry.
  -     (font_update_lface): Don't parse "foundry-family" form here.
  -     Handle FONT_FOUNDRY_INDEX.
  -     (font_find_for_lface): Likewise.  Handle alternate families here.
  -     If registry is nil, try iso8859-1 and ascii-0.
  -     (font_open_for_lface): Pay attention to size in ENTITY.
  -     (font_open_by_name): Simplify by calling font_load_for_lface.
  -     (free_font_driver_list): Delete it.
  -     (font_update_drivers): Preserve the order of backends.
  -     (syms_of_font): Setting of sort_shift_bits adjusted for the change
  -     of font_score and font_sort_entites.
  -     (font_update_sort_order): Likewise.
  -
  -     * xfaces.c (LFACE_FOUNDRY): New macro.
  -     (check_lface_attrs): Check foundry.
  -     (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
  -     (merge_face_vectors): Check foundry.
  -     (merge_face_ref): Likewise.
  -     (Finternal_set_lisp_face_attribute): Likewise.
  -     (x_update_menu_appearance): Likewise.
  -     (Finternal_get_lisp_face_attribute): Likewise.
  -     (lface_hash): Likewise.
  -     (lface_same_font_attributes_p): Likewise.
  -     (x_supports_face_attributes_p): Likewise.
  -     (tty_supports_face_attributes_p): Likewise.
  -     (Finternal_set_alternative_font_family_alist): Intern strings.
  -     (Finternal_set_alternative_font_registry_alist): Downcase strings.
  -     (realize_default_face): Set LFACE_FOUNDRY (lface).
  -
  -     * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
  -     font-driver at first.
  -
  -     * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
  -
  -2008-06-12  Emanuele Giaquinta  <emanuele.giaquinta@gmail.com>  (tiny change)
  -
  -     * lread.c (Fload): Use xfree, not free on saved_doc_string.
  -
  -2008-06-12  Jim Meyering  <meyering@redhat.com>
  -
  -     Make unexec_free handle NULL the same way free does.
  -     * unexmacosx.c (unexec_free): Ignore a NULL argument.
  -
  -2008-06-12  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * character.h (CHAR_TO_BYTE_SAFE): New macro.
  -     * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
  -     * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
  -     (WEAK_ALIAS): Simplify.
  -     * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
  -     when searching a unibyte buffer.
  -
  -2008-06-12  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xfns.c (Fx_select_font): Rename from x-font-dialog.
  -
  -2008-06-12  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * w32font.c: Include ctype.h.
  -
  -2008-06-11  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (w32font_encode_char): Detect missing glyphs that are
  -     misreported as space.
  -     (add_font_entity_to_list): Support unicode-bmp and unicode-sip
  -     as aliases for registry iso10646-1.
  -
  -2008-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * buffer.c (clone_per_buffer_values): Skip `name'.
  -
  -2008-06-11  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * font.c (font_parse_fcname): Fix last change; accept decimal
  -     points in font size.
  -
  -2008-06-10  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32uniscribe.c (add_opentype_font_name_to_list):
  -     Skip non unicode fonts.
  -
  -2008-06-10  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xfns.c (Fx_font_dialog): New function.
  -
  -     * gtkutil.c (xg_dialog_response_cb): Rename from
  -     xg_file_response_callback.
  -     (pop_down_dialog): Rename from pop_down_file_dialog.
  -     (xg_get_file_name): Callers changed.
  -     (xg_get_font_name): New function.
  -
  -     * gtkutil.h (xg_get_font_name): Insert prototype.
  -
  -2008-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * xdisp.c (underline_minimum_offset): Rename from xterm.c's
  -     x_underline_minimum_display_offset.
  -     (syms_of_xdisp): Declare it here rather than in xterm.c.
  -     * dispextern.h (underline_minimum_offset): Declare it.
  -     * w32term.c (x_draw_glyph_string): Use it.
  -     * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
  -     (syms_of_xterm): Don't declare it any more.
  -     (x_draw_glyph_string): Adjust to the new name.
  -
  -2008-06-10  David De La Harpe Golden  <david@harpegolden.net>
  -
  -     * xterm.c (x_underline_minimum_display_offset): New var.
  -     (x_draw_glyph_string): Use it.
  -     (syms_of_xterm): Declare it.
  -
  -2008-06-10  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * font.c (font_parse_fcname): Accept GTK-style font names too.
  -
  -2008-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * dired.c (file_name_completion): Don't return t if the match is exact
  -     but with different capitalization.
  -     * minibuf.c (Ftry_completion): Simplify.
  -
  -     * window.c (Vwindow_point_insertion_type): New var.
  -     (set_window_buffer): Use it.
  -     (syms_of_window): Init and export it to Lisp.
  -
  -2008-06-10  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.h (font_intern_prop): Prototype adjusted.
  -
  -     * font.c (font_intern_prop): New arg force_symbol.
  -     (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
  -     Adjust for the change of font_intern_prop.
  -
  -     * ftfont.c (ftfont_pattern_entity):
  -     * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
  -     (w32_registry):
  -     * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
  -     the change of font_intern_prop.
  -
  -2008-06-09  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * w32menu.c (digest_single_submenu): Declare extern.
  -
  -2008-06-09  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32term.c (x_make_frame_visible): Use alternate restore flags.
  -
  -     * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
  -     (parse_single_submenu): Remove.
  -     (digest_single_submenu): Remove.
  -     (syms_of_w32menu): Don't initialise variables that have moved
  -     to menu.c.
  -     (set_frame_menubar): Sync with version in xmenu.c.
  -     (w32_menu_show): Sync with xmenu_show in xmenu.c.
  -
  -     * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
  -     Make static again.
  -
  -2008-06-09  Jason Rumney  <jasonr@gnu.org>
  -
  -     Changes to w32 files related to the move of common menu code
  -     to menu.c on 2008-06-08 by Chong Yidong.
  -
  -     * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
  -     defs to w32gui.h.
  -     (single_keymap_panes, push_menu_item, push_menu_pane):
  -     Make globally visible.
  -
  -     * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
  -     (local_free, malloc_widget_value, free_widget_value)
  -     (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
  -     (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
  -     (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
  -     (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
  -     (menu_items, menu_items_allocated, menu_items_used)
  -     (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
  -     (init_menu_items, finish_menu_items, discard_menu_items)
  -     (grow_menu_items, push_submenu_start, push_submenu_end)
  -     (push_left_right_boundary, push_menu_pane, push_menu_item)
  -     (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
  -     (free_menubar_widget_tree_value, parse_single_submenu)
  -     (update_submenu_strings): Remove functions.
  -     (xmalloc_widget_value): Remove and declare extern.
  -
  -     * makefile.w32-in ($(SRC)/menu.$(O)): New target.
  -     (OBJ1): Build it.
  -
  -     * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
  -     (local_heap, local_alloc, local_free, malloc_widget_value)
  -     (free_widget_value): Define here.
  -
  -2008-06-09  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.h (Qascii_0): Extern it.
  -
  -     * font.c (Qascii_0): New variable.
  -     (syms_of_font): DEFSYM it.
  -     (font_open_by_name): If the registry "iso8859-1" fails, try also
  -     "ascii-0".
  -
  -     * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
  -
  -2008-06-08  Kenichi Handa  <handa@m17n.org>
  -
  -     * .gdbinit (xfont): New command.
  -
  -2008-06-08  Andreas Schwab  <schwab@suse.de>
  -
  -     * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
  -     * Makefile.in (menu.o): Update dependencies.
  -
  -     * Makefile.in (obj): Always add menu.o.
  -     * emacs.c (main): Always call syms_of_menu.
  -     * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
  -
  -2008-06-08  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * Makefile.in: Compile menu.c.
  -
  -     * lisp.h: Declare syms_of_menu.
  -
  -     * emacs.c (main): Call syms_of_menu.
  -
  -     * keyboard.h: Relocate platform-independent menu definitions from
  -     xmenu.c.
  -
  -     * menu.c: New file.  Relocate platform-independent menu
  -     definitions from xmenu.c.  Suggested by Adrian Robert.
  -
  -     * xmenu.c: Remove platform-independent menu definitions.
  -     (menu_items menu_items_inuse, menu_items_allocated)
  -     (menu_items_used, menu_items_n_panes)
  -     (menu_items_submenu_depth): Move to keyboard.h.
  -     (init_menu_items, finish_menu_items, unuse_menu_items)
  -     (discard_menu_items, restore_menu_items, save_menu_items)
  -     (grow_menu_items, push_submenu_start, push_submenu_end)
  -     (push_left_right_boundary, push_menu_pane, push_menu_item)
  -     (keymap_panes, single_keymap_panes, single_menu_item)
  -     (list_of_panes, list_of_items, find_and_call_menu_selection)
  -     (xmalloc_widget_value, free_menubar_widget_value_tree)
  -     (parse_single_submenu, digest_single_submenu)
  -     (update_submenu_strings): Move to menu.c.
  -
  -2008-06-07  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
  -
  -2008-06-06  Miles Bader  <miles@gnu.org>
  -
  -     * xdisp.c (x_produce_glyphs): Calculate tab width based on current
  -     face, not frame default.
  -
  -2008-06-05  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * window.c (pop_up_windows, pop_up_frames)
  -     (display_buffer_reuse_frames, Vpop_up_frame_function)
  -     (Vdisplay_buffer_function, Veven_window_heights)
  -     (Vspecial_display_buffer_names, Vspecial_display_regexps)
  -     (Vspecial_display_function, Vsame_window_buffer_names)
  -     (Vsame_window_regexps, split_height_threshold)
  -     (Vsplit_window_preferred_function): Move those vars to window.el.
  -     (display_buffer_1, Fspecial_display_p, Fsame_window_p)
  -     (Fdisplay_buffer): Move those functions to window.el.
  -     (syms_of_window): Remove corresponding declarations.
  -     (display_buffer): New function.
  -     (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
  -     * dispnew.c (Flast_nonminibuf_frame): New function.
  -     * buffer.c (Fpop_to_buffer): Move to window.el.
  -
  -2008-06-05  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
  -
  -2008-06-05  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (detect_coding): Fix previous change.
  -     (detect_coding_system): Likewise.
  -
  -2008-06-05  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
  -
  -     * keymap.c (Vminibuffer_local_filename_must_match_map):
  -     Rename from Vminibuffer_local_must_match_filename_map.
  -     (syms_of_keymap):
  -     * minibuf.c (Fcompleting_read): Adjust accordingly.
  -     * commands.h: Rename declaration as well.
  -
  -2008-06-05  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (Ffont_spec): Don't use font_parse_family_registry for
  -     family name.
  -     (Ffont_put): Likewise.
  -
  -     * fontset.c (fontset_find_font): Call font_open_for_lface with the
  -     current font-spec.
  -
  -     * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
  -     is unspecified.
  -
  -     * xfaces.c (realize_x_face): If the font-related face attributes
  -     are the same as those of default face, realize a new fontset from
  -     default->fontset.
  -     (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
  -
  -2008-06-05  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
  -     (move_it_in_display_line): New wrapper.
  -
  -     * window.c (window_scroll_pixel_based_preserve_x)
  -     (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
  -     (window_scroll_pixel_based, window_scroll_line_based):
  -     Use them to preserve column positions.
  -     (syms_of_window): Initialize them.
  -
  -     * indent.c (Fvertical_motion): Extend first arg to allow passing an
  -     (HPOS . VPOS) pair.
  -
  -     * dispextern.h (move_it_in_display_line): Declare.
  -
  -2008-06-05  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
  -     (Fwindow_parameters): Return copy of parameter alist.  Doc fix.
  -     (Fset_window_parameter): Return VALUE, not parameter alist.  Doc fix.
  -
  -2008-06-04  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * window.c (Fset_window_parameter): Doc fix.
  -     (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
  -
  -2008-06-04  Joakim Verona  <joakim@verona.se>
  -
  -     * window.h (struct window): Add new member window_parameters.
  -
  -     * window.c (Fwindow_parameters, Fwindow_parameter)
  -     (Fset_window_parameter): New defuns.
  -     (syms_of_window): Defsubr the new defuns.
  -     (make_window): Initialize window_parameters to nil.
  -
  -2008-06-04  John Paul Wallington  <jpw@pobox.com>
  -
  -     * eval.c (Fdefmacro): Doc fix.
  -
  -2008-06-04  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (detect_coding): Fix handling of coding->head_ascii.
  -     Be sure to call setup_coding_system when we find a proper coding system.
  -     (detect_coding_system): Fix handling of coding->head_ascii.
  -
  -2008-06-03  Andreas Schwab  <schwab@suse.de>
  -
  -     * font.c (font_prop_validate_spacing): Fix last change.
  -
  -2008-06-03  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_prop_validate_spacing): Handle uppercase symbols.
  -     (font_parse_fcname): Fix handling of unknown key.
  -
  -     * xfont.c (xfont_list): Try an alias.
  -
  -     * charset.c (char_charset): Return NULL if the arg charset_list is
  -     specified and C doesn't belong to any of them.
  -
  -2008-06-02  Chip Coldwell  <coldwell@redhat.com>
  -
  -     * font.c (font_pixel_size): Don't take cdr of an integer.
  -
  -2008-06-02  Jim Meyering  <meyering@redhat.com>
  -
  -     Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
  -     * alloc.c (xfree): Return right away for a NULL arg.
  -     * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
  -     * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
  -     * mac.c (create_apple_event_from_event_ref): Likewise.
  -     (create_apple_event_from_drag_ref, cfstring_create_normalized):
  -     Likewise.
  -     * doprnt.c (doprnt1): Likewise.
  -     * frame.c (frame): Likewise.
  -     * keyboard.c (wipe_kboard): Likewise.
  -     * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
  -     (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
  -     * term.c (tty_default_color_capabilities, maybe_fatal)
  -     (delete_tty): Likewise.
  -     * w16select.c (string): Likewise.
  -     * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
  -     * w32bdf.c (w32_free_bdf_font): Likewise.
  -     * w32fns.c (w32_unload_font): Likewise.
  -     * w32font.c (w32font_close): Likewise.
  -     * window.c (size_window): Likewise.
  -     * xselect.c (receive_incremental_selection): Likewise.
  -     * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
  -     * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
  -     * w32.c (stat): Likewise.
  -
  -     Remove useless if-before-free tests.
  -     * editfns.c (Fset_time_zone_rule): Likewise.
  -     * lread.c (nosuffix): Likewise.
  -     * ralloc.c (get_bloc): Likewise.
  -     * regex.c (reg_free): Likewise.
  -     * xftfont.c (xftfont_open, xftfont_close): Likewise.
  -     * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
  -     * xsmfns.c (smc_save_yourself_CB): Likewise.
  -
  -2008-06-02  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_find_for_lface): Handle float font size.
  -     (font_open_for_lface): Likewise.
  -
  -     * xfaces.c (x_supports_face_attributes_p): Check face->font before
  -     comparing the properties.
  -
  -2008-06-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
  -     Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
  -     Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
  -     Don't add empty script list.
  -     (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
  -
  -2008-06-01  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * Makefile.in (dot, dotdot): Remove, update users.
  -     ".." has been used elsewhere in the file for a long time.
  -     (LIBXT_STATIC): Remove conditional based on unused variable.
  -
  -2008-06-01  Miles Bader  <miles@gnu.org>
  -
  -     * xfaces.c (Vface_remapping_alist): New variable.
  -     (syms_of_xfaces): Initialize it.
  -     (enum named_merge_point_kind): New type.
  -     (struct named_merge_point): Add `named_merge_point_kind' field.
  -     (push_named_merge_point): Make cycle detection respect different
  -     named-merge-point kinds.
  -     (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
  -     Remove face-name alias resolution.
  -     (lface_from_face_name): New definition using
  -     `lface_from_face_name_no_resolve'.
  -     (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
  -     Call lface_from_face_name_no_resolve instead of lface_from_face_name.
  -     (get_lface_attributes): New definition that layers face-remapping on
  -     top of get_lface_attributes_no_remap.  New arg `named_merge_points'.
  -     (lookup_basic_face): New function.
  -     (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
  -     (realize_named_face): Call `get_lface_attributes_no_remap' instead of
  -     `get_lface_attributes'.
  -     (face_at_buffer_position): Use `lookup_basic_face' to lookup
  -     DEFAULT_FACE_ID if necessary.  When optimizing the default-face case,
  -     return default_face's face-id instead of the constant DEFAULT_FACE_ID.
  -
  -     * xdisp.c (init_iterator): Pass base_face_id through
  -     `lookup_basic_face' when we actually use it as a face-id.
  -     (handle_single_display_prop): Use `lookup_basic_face' to lookup
  -     DEFAULT_FACE_ID.
  -
  -     * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
  -     lookup the initial face-id.
  -
  -     * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
  -
  -2008-06-01  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
  -     (Fremove_text_properties): Fix typos in docstrings.
  -
  -2008-05-31  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_list_entities): Fix the car part of data to be
  -     stored in the cache.
  -
  -     * ftfont.c (ftfont_font_format): Don't use strcasestr.
  -
  -2008-05-30  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * chartab.c (Foptimize_char_table, optimize_sub_char_table):
  -     Add a `test' argument so another predicate than `equal' can be used.
  -     (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
  -     (map_char_table): Remove unused vars `c' and `i'.
  -     * lisp.h (Foptimize_char_table): Adjust declaration.
  -     * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
  -
  -2008-05-30  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
  -     (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
  -     defined.
  -
  -2008-05-30  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
  -     (Fmake_variable_frame_local): Disallow mixing buffer-local and
  -     frame-local settings for the same variable.
  -
  -2008-05-30  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (Ffont_info): Move to font.c.
  -     (syms_of_fontset): Delete defsubr of Sfont_info.
  -
  -     * font.c (font_style_to_value, font_score): Delete casting of the
  -     args to xstcasecmp.
  -     (register_font_driver): Increment num_font_drivers only when
  -     registering the driver globally.
  -     (Ffont_info): Move from fontset.c.  Handle a font object too.
  -     (syms_of_font): Defsubr Sfont_info.
  -
  -2008-05-29  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.h (enum define_coding_utf8_arg_index): New enum.
  -     (enum coding_attr_index): Change coding_attr_utf_16_bom to
  -     coding_attr_utf_bom.
  -     (enum utf_bom_type): Rename from utf_16_bom_type.
  -     (struct utf_16_spec): Adjust for the above change.
  -     (struct coding_system): Add utf_8_bom in `spec' union.
  -
  -     * coding.c (CODING_UTF_8_BOM): New macro.
  -     (enum coding_category): Delete coding_category_utf_8, add
  -     coding_category_utf_8_auto, coding_category_utf_8_nosig, and
  -     coding_category_utf_8_sig.
  -     (CATEGORY_MASK_UTF_8): Delete it.
  -     (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
  -     (CATEGORY_MASK_UTF_8_SIG): New macros.
  -     (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
  -     CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
  -     CATEGORY_MASK_UTF_8_SIG.
  -     (CATEGORY_MASK_UTF_8): New macro.
  -     (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
  -     (detect_coding_utf_8): Check BOM.
  -     (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
  -     (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
  -     (encode_coding_utf_16): Likewise.
  -     (setup_coding_system): Likewise.  Set CODING_UTF_8_BOM (coding).
  -     (detect_coding, detect_coding_system): Handle utf-8-auto.
  -     (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
  -     (syms_of_coding): Fix setting up of Vcoding_category_table.
  -
  -2008-05-29  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * process.c (Faccept_process_output): If `millisec' is non-nil,
  -     `seconds' default to 0.
  -     (wait_reading_process_output): Also return non-nil if we read output
  -     from a non-running process.
  -
  -2008-05-29  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (w32font_open_internal): Prefer truetype fonts unless
  -     `raster' specified.
  -     (add_font_entity_to_list): Allow non-opentype truetype fonts back
  -     in the uniscribe backend, but disallow any font that has no
  -     unicode subrange support.
  -
  -2008-05-29  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
  -     Fix typos in docstrings.
  -
  -2008-05-29  Kenichi Handa  <handa@m17n.org>
  -
  -     * xfaces.c (Fx_list_fonts): Make it return a list of font names.
  -     (Fx_family_fonts): Set frame correctly.
  -
  -2008-05-28  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32term.c (x_draw_glyph_string): Use clipmask if specified.
  -
  -2008-05-28  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
  -     calling build_annotations.
  -
  -2008-05-28  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * coding.c (Fdecode_coding_region, Fencode_coding_region)
  -     (Fencode_coding_string):
  -     (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
  -     <latin-extra-code-table>: Fix typos in docstrings.
  -     (syms_of_coding) <coding-system-alist>: Doc fix.
  -     (syms_of_coding) <translation-table-for-input>: Reflow docstring.
  -
  -2008-05-28  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (Ffont_info): Don't call font_close_object.
  -
  -     * font.c (font_parse_family_registry): Use Ffont_put to validate
  -     foundry and family.
  -     (font_delete_unmatched): Don't check spacing.
  -     (font_list_entities): Add spacing to the spec to list fonts.
  -
  -     * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
  -     (ftfont_list): Check spacing here.  Don't include FC_CHARSET in objset.
  -
  -     * coding.c (encode_coding_raw_text): Fix previous change.
  -     (encode_coding_object): When the dst_object is a buffer and is
  -     different from src_object, move gap to PT.
  -
  -2008-05-27  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
  -
  -2008-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * coding.c (encode_coding_raw_text): Set coding->produced_char for
  -     all branches.  Compute it differently.
  -
  -     * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
  -
  -2008-05-27  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
  -     into "else if () ... else ...".
  -
  -2008-05-27  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (w32font_open_internal): Determine if glyph indices
  -     are likely to work here.
  -
  -2008-05-27  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
  -     draw overlap glyphs with appropriate highlighting.
  -
  -2008-05-27  Kenichi Handa  <handa@m17n.org>
  -
  -     * xfont.c (xfont_open): Fix calculation of font->average_width.
  -
  -2008-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * casefiddle.c (casify_object): Try to guess better whether the
  -     argument is a byte or a char.
  -
  -2008-05-26  Andreas Schwab  <schwab@suse.de>
  -
  -     * xselect.c (x_reply_selection_request): Properly handle format == 32.
  -     Always send multiples of format size.
  -
  -     * xterm.c (x_set_frame_alpha): Fix type mismatch.
  -
  -2008-05-26  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (w32font_text_extents): Zero whole metrics struct first.
  -     (compute_metrics): Don't set failure if we just cleared the cache.
  -     (w32_weight_table): Remove unused variable.
  -     (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
  -     backwards compatibility.
  -
  -2008-05-25  Kenichi Handa  <handa@m17n.org>
  -
  -     * w32term.c (x_draw_glyph_string):
  -     * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
  -
  -     * xfaces.c: Delete unused function prototypes.
  -     (xstrlwr, font_frame): Delete them.
  -     (clear_face_cache): Delete unused variable.
  -
  -     * xftfont.c (xftfont_open): Delete unused variable.
  -     If underline_thickness is not 1, adjust underline_position.
  -
  -     * ftxfont.c (ftxfont_open): Delete unused variable.
  -
  -     * fontset.c (face_for_char): Optimize for the case of no charset
  -     property.
  -
  -     * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
  -     (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
  -     (otf_open, font_otf_capability, generate_otf_features)
  -     (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
  -     Comment out by surrounding "#if 0" and "#endif" for the moment.
  -     (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
  -     (syms_of_font): Codes for accessing above commented out.
  -
  -2008-05-24  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * w32proc.c: Include dispextern.h.
  -
  -     * w32.c: Include dispextern.h.
  -
  -2008-05-23  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * charset.c (Fencode_char, Fsplit_char): Doc fixes.
  -     (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
  -     Fix typos in docstrings.
  -
  -2008-05-23  Jason Rumney  <jasonr@gnu.org>
  -
  -     * xsmfns.c: Remove includes that are already included by config.h.
  -
  -2008-05-23  Kenichi Handa  <handa@m17n.org>
  -
  -     * charset.c (Qemacs, charset_emacs): New variables.
  -     (char_charset): Fix for non-Unicode characters.
  -     (syms_of_charset): Define charset_emacs.
  -
  -     * w32term.c (x_draw_glyph_string): Be sure to update
  -     s->underline_thickness and s->underline_position.  Be sure to draw
  -     underline within the current line area.
  -
  -     * xterm.c (x_draw_glyph_string): Be sure to update
  -     s->underline_thickness and s->underline_position.  Be sure to draw
  -     underline within the current line area.
  -
  -     * fontset.c: Delete unused variables and add casting for char *
  -     throughout the file.
  -     (fontset_font): Try the fallback fonts of the current fontset
  -     before consulting the default fontset.
  -
  -     * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
  -
  -     * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
  -
  -2008-05-22  Jason Rumney  <jasonr@gnu.org>
  -
  -     * font.c: Don't include strings.h.
  -
  -     * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
  -
  -     * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
  -     * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
  -     * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
  -     to call xstrcasecmp.
  -
  -     * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
  -
  -     * fontset.c (fs_query_fontset): Use xstrcasecmp.
  -
  -     * font.c (font_style_to_value, font_score): Use xstrcasecmp.
  -
  -     * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
  -
  -2008-05-22  Kenichi Handa  <handa@m17n.org>
  -
  -     * puresize.h (BASE_PURESIZE): Increase to 1220000.
  -
  -     * font.c (font_prop_validate_style): Adjust for the format
  -     change of font_style_table.
  -
  -     * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
  -     two args.
  -
  -     * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
  -     two args.
  -
  -2008-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * minibuf.c (keys_of_minibuf): Delete.
  -     * lisp.h (keys_of_minibuf): Delete.
  -     * emacs.c (main): Don't call keys_of_minibuf.
  -
  -2008-05-22  Kenichi Handa  <handa@m17n.org>
  -
  -     * ftfont.c (ftfont_resolve_generic_family): Rename from
  -     ftfont_list_generic_family.  Return a single family for each
  -     generic family.
  -     (ftfont_spec_pattern): Add FC_FAMILY to pattern.
  -     (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
  -     Call font_add_log.
  -     (ftfont_match): Call font_add_log.
  -
  -     * font.h (Ffont_xlfd_name): EXFUN adjusted.
  -     (FONT_DEBUG): Define it.
  -     (font_add_log): Extern it.
  -     (font_assert): Rename from xassert.
  -
  -     * xfont.c (xfont_get_pcm): Change xassert to font_assert.
  -     (xfont_list_family): Call font_add_log.
  -     (xfont_match): Likewise.
  -     (memq_no_quit): Delete.
  -
  -     * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
  -     call of Ffont_xlfd_name.
  -
  -     * xfaces.c (struct table_entry, slant_table, weight_table)
  -     (swidth_table): Move to font.c.
  -
  -     * font.c: Checking of FONT_DEBUG is moved to font.h.  All calls of
  -     xassert are changed to font_assert.  Delete many unused variables.
  -     (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
  -     New variables.
  -     (struct table_entry): Move from xfaces.c and modified.
  -     (weight_table, slant_table, width_table): Move from xfaces.c and
  -     contents adjusted for the change of struct table_entry.
  -     (font_style_to_value, font_style_symbolic): Adjust for the
  -     format change of font_style_table.
  -     (font_parse_family_registry): Don't overwrite existing foundry and
  -     family of font_spec.
  -     (font_score): Fix calculation of diff for sizes.
  -     (font_sort_entites): Call font_add_log.
  -     (font_delete_unmatched): Return a newly created list.
  -     (font_list_entities): Fix previous change.  Call font_add_log.
  -     (font_matching_entity, font_open_entity, font_close_entity):
  -     Call font_add_log.
  -     (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
  -     (Finternal_set_font_style_table): Delete.
  -     (BUILD_STYLE_TABLE): New macro.
  -     (build_style_table): New function.
  -     (Vfont_log, font_log_env_checked): New variables.
  -     (font_add_log): New function.
  -     (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
  -     Declare Lisp variables "font-weight-table", "font-slant-table",
  -     "font-width-table", and "font-log".  Initialize font_style_table.
  -
  -2008-05-21  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * xterm.c (x_set_frame_alpha): Move declarations before statements.
  -
  -2008-05-21  Seiji Zenitani  <zenitani@mac.com>
  -         Ryo Yoshitake  <ryo@shiftmode.net>
  -
  -     * frame.c (Qalpha): Add a new frame parameter `alpha'.
  -     (Vframe_alpha_lower_limit): New variable.
  -     (x_set_alpha): New function.
  -
  -     * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
  -
  -     * xfns.c (x-create-frame, Qalpha):
  -     Initialize the frame parameter `alpha'.
  -     * xterm.c (OPAQUE, OPACITY): New.
  -     (x_set_frame_alpha): New function.
  -     (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
  -
  -     * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
  -     * w32fns.c (w32_frame_parm_handlers): Likewise.
  -
  -2008-05-20  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (add_font_entity_to_list): Don't add non-opentype
  -     truetype fonts to opentype list.
  -
  -2008-05-20  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * fontset.c (Ffontset_info): Doc fix.
  -     (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
  -     <ignore-relative-composition>: Fix typos in docstrings.
  -
  -     * font.c (syms-of-font) <font-encoding-alist>:
  -     (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
  -     (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
  -     (Ffont_otf_alternates): Doc fixes.
  -
  -2008-05-20  Kenichi Handa  <handa@m17n.org>
  -
  -     * Makefile.in (FONTSRC): Delete it.  Change all $(FONTSRC) to
  -     font.h through out the file.
  -     (FONT_DRIVERS): Rename from FONTOBJ.
  -     (obj): Change $(FONTOBJ) to $(FONT_DRIVERS).  Add font.o.
  -     (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
  -
  -     * emacs.c (main): Call syms_of_font unconditionally.
  -
  -     * font.h (find_font_encoding): Extern it.
  -
  -     * font.c (Vfont_encoding_alist, find_font_encoding): Move from
  -     fontset.c.
  -     (font_pixel_size) [! HAVE_WINDOW_SYSTEM]: Return 1.
  -     (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
  -     FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
  -     only when HAVE_WINDOW_SYSTEM is defined.
  -     (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
  -     when HAVE_WINDOW_SYSTEM is defined.
  -
  -     * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
  -     (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
  -
  -     * xfaces.c: Include font.h unconditionally.
  -     (merge_face_ref, merge_face_vectors)
  -     (Finternal_set_lisp_face_attribute): Cancel the previous change.
  -
  -2008-05-20  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * xdisp.c (select_frame_for_redisplay): Adjust for last change to
  -     indirect_variable.
  -     * eval.c (lisp_indirect_variable): New fun.
  -     (Fuser_variable_p): Use it.
  -
  -2008-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * lisp.h (indirect_variable):
  -     * data.c (indirect_variable, let_shadows_buffer_binding_p):
  -     Use Lisp_Symbol pointers rather than Lisp_Object.
  -     Adjust callers.
  -     * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
  -     To this end, change calling-convention.
  -
  -     * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
  -     if some non-hidden buffers are selected by string&pred.
  -
  -2008-05-19  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * process.c (wait_reading_process_output): Always check status
  -     when in batch mode.
  -
  -2008-05-19  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_list_entities): Fix handling of cache.
  -     (font_matching_entity): Likewise.
  -
  -     * ftfont.c (cs_iso8859_1): Delete.
  -     (ft_face_cache): New variable.
  -     (struct ftfont_info): New member fc_charset_idx.
  -     (ftfont_build_basic_charsets): Delete.
  -     (fc_charset_table): New variable.
  -     (ftfont_pattern_entity): New arg fc_charset_idx.  Store (FILENAME
  -     . FC_CHARSET_IDX) as :font-entity property in the font entity.
  -     Callers changed.
  -     (ftfont_lookup_cache, ftfont_get_charset): New functions.
  -     (ftfont_spec_pattern): New argument fc_charset_idx.
  -     Check registry more rigidly.  Change callers.
  -     (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
  -     change of :font-entity property of the font.
  -
  -     * xftfont.c (xftfont_open): Adjust for the change of :font-entity
  -     property of the font.
  -
  -2008-05-18  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * coding.c (Fcoding_system_p): Rename argument to match docstring.
  -     (Funencodable_char_position, Fcheck_coding_systems_region)
  -     (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
  -     (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
  -     (Ffind_operation_coding_system, Fset_coding_system_priority)
  -     (Fcoding_system_eol_type): Doc fixes.
  -
  -2008-05-17  Glenn Morris  <rgm@gnu.org>
  -
  -     * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
  -
  -2008-05-16  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
  -     and st_gid.
  -
  -     * frame.c (Fdelete_frame): Don't call font_update_drivers if
  -     HAVE_WINDOW_SYSTEM is not defined.
  -
  -     * xfaces.c (merge_face_ref, merge_face_vectors)
  -     (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
  -     HAVE_WINDOW_SYSTEM is defined.
  -     (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
  -
  -2008-05-16  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
  -
  -2008-05-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
  -
  -2008-05-15  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
  -     preference.
  -
  -2008-05-15  Glenn Morris  <rgm@gnu.org>
  -
  -     * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
  -
  -2008-05-15  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * fns.c (init_fns): Don't initialize weak_hash_tables here.
  -     (init_weak_hash_tables): New fun.  Initialize weak_hash_tables.
  -
  -     * alloc.c (init_alloc_once): Call init_weak_hash_tables.
  -
  -2008-05-15  Kenichi Handa  <handa@m17n.org>
  -
  -     * ftfont.c (ftfont_list): Downcase family name to check generic
  -     families.
  -
  -     * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
  -     font-spec for QCfont value.
  -
  -     * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
  -     buffer.  Check the return value of it.
  -
  -2008-05-14  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32term.c (w32_get_glyph_overhangs): Remove.
  -     (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
  -
  -2008-05-14  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_prop_validate): Make nil a valid value.
  -     (font_clear_cache): Check if the cached vector of entities is nil
  -     or not.
  -
  -2008-05-14  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * emacs.c (main_thread): Conditionalize on
  -     FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
  -     (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
  -
  -     * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
  -     (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
  -     FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
  -
  -2008-05-14  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (detect_coding_iso_2022): Ignore a coding category that
  -     has no corresponding coding system.
  -
  -2008-05-14  Jason Rumney  <jasonr@gnu.org>
  -
  -     * font.h (struct font) [WINDOWSNT]: Remove codepage member.
  -
  -     * w32font.h (w32font_open_internal): Update declaration.
  -
  -     * w32font.c (w32font_open_internal): Change last argument from
  -     w32font_info struct to font object.  Fill in font object from
  -     font_entity.  Get Outline metrics if possible.  Use them to
  -     calculate underline position and thickness.  Use xlfd name as name
  -     property.  Don't set codepage.
  -     (w32font_open): Pass font_object to w32font_open_internal.  Don't
  -     update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
  -     (w32font_draw): Use s->font.
  -     (clear_cached_metrics): Don't clear non-existent blocks.
  -
  -     * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
  -     font was not found.
  -     (x_draw_glyph_string): Use underline position and thickness from font.
  -
  -     * w32uniscribe.c (uniscribe_open): Pass font_object to
  -     w32font_open_internal.
  -
  -2008-05-14  Kenichi Handa  <handa@m17n.org>
  -
  -     These changes are to delete all legacy font-handling codes, and
  -     make Emacs use only font-backends.
  -
  -     * Makefile.in: Delete USE_FONT_BACKEND conditionals.
  -     (frame.o, image.o, print.o): Depend on $(FONTSRC).
  -
  -     * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
  -
  -     * charset.h (Vcharset_non_preferred_head)
  -     (Vcurrent_iso639_language): Extern them.
  -
  -     * charset.c (Vcharset_non_preferred_head): New variable.
  -     (Vcurrent_iso639_language): New variable.
  -     (syms_of_charset): Declare it as a Lisp variable.
  -     (char_charset): Don't check non preferred charsets.  As a last
  -     resort, return charset_unicode.
  -     (Fset_charset_priority): Update Vcharset_non_preferred_head.
  -
  -     * composite.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.
  -
  -     * dispextern.h (struct glyph_string): Change type of `font' to
  -     `struct font *'.
  -     (struct glyph_string): New member underline_position and
  -     underline_thickness.
  -     (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
  -     (struct face): Change type of `font' to `struct font *'.  Remove
  -     members `font_name', `font_info_id'.
  -     (per_char_metric, encode_char): Delete externs.
  -     (calc_pixel_width_or_height): Adjust the prototype.
  -
  -     * emacs.c (enable_font_backend): Delete extern.
  -     (main): Don't set enable_font_backend.  Don't check the command
  -     line argument "-disable-font-backend".
  -
  -     * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
  -     (enum font_property_index): New members FONT_DPI_INDEX,
  -     FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
  -     FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
  -     FONT_OBJECT_MAX.  Delete FONT_FRAME_INDEX.
  -     (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
  -     (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
  -     (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
  -     (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
  -     (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
  -     (struct font_spec, struct font_entity): New structs.
  -     (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
  -     (struct font): Many members from old "struct font_info" moved to
  -     here.  Members font and entity deleted.
  -     (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
  -     the new font-related objects.
  -     (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
  -     (CHECK_FONT_GET_OBJECT): Likewise.
  -     (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
  -     (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
  -     (struct font_driver): New members case_sensitive anc check.  Type
  -     of the member list and open changed.
  -     (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
  -     (font_symbolic_width, font_find_object, font_get_spec)
  -     (font_set_lface_from_name): Delete extern.
  -     (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
  -
  -     * font.c: Include <strings.h>.
  -     (enable_font_backend): Delete it.
  -     (Qfont_spec, Qfont_entity, Qfont_object): New variables.
  -     (CHECK_VALIDATE_FONT_SPEC): Delete it.
  -     (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
  -     (null_string): Delete it.
  -     (null_vector): Make it static.
  -     (font_family_alist): Delete it.
  -     (Qnormal): Extern it.
  -     (QCextra, QClanguage): Delete it.
  -     (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
  -     (font_make_spec, font_make_entity, font_make_object)
  -     (font_intern_prop): Renamed from intern_downcase.  Don't downcase
  -     the string.  Callers changed.
  -     (font_pixel_size): Adjusted for the format change of font-related
  -     objects.
  -     (prop_name_to_numeric, prop_numeric_to_name): Delete them.
  -     (font_style_to_value, font_style_symbolic): New function.
  -     (build_font_family_alist): Delete it.
  -     (font_registry_charsets): Use Fassoc_string instead of
  -     assq_no_quit.
  -     (font_prop_validate_symbol): Don't return null_string.
  -     (font_prop_validate_style): Adjusted for the change of
  -     style-related values in a font vector.
  -     (font_property_table): Delete entries for QClanguage and
  -     QCantialias, add entries for QCavgwidth.
  -     (get_font_prop_index): Delete the 2nd argument FROM.
  -     (font_prop_validate): Arguments changed.
  -     (font_put_extra): Adjusted for the change of font-related objects.
  -     (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
  -     (font_parse_fcname, font_unparse_fcname)
  -     (font_prepare_composition): Likewise.
  -     (font_parse_family_registry): Renamed from font_merge_old_spec.
  -     (otf_open): Delete the 1st arg entity.
  -     (font_otf_capability): Adjusted for the above change.
  -     (font_score): New arg alternate_families.  Adjusted for the change
  -     of font-related objects.
  -     (font_sort_entites): New arg best_only.
  -     (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
  -     Delete them.
  -     (font_match_p): Check alternate families.
  -     (font_find_object): Delete it.
  -     (font_check_object): New function.
  -     (font_clear_cache): Adjusted for the change of font-related objects.
  -     (font_delete_unmatched): New arg.
  -     (font_list_entities): Call font_driver->list with a spec that
  -     doesn't specify style-related properties.
  -     (font_matching_entity): Arguments changed.  Caller changed.
  -     (font_open_entity): Adjusted for the change of font-related objects.
  -     (font_close_object, font_has_char, font_encode_char)
  -     (font_get_name, font_get_spec): Likewise.
  -     (font_spec_from_name, font_clear_prop, font_update_lface):
  -     New functions.
  -     (font_find_for_lface, font_open_for_lface, font_load_for_lface)
  -     (font_prepare_for_face, font_done_for_face, font_open_by_name)
  -     (font_at): Adjusted for the change of font-related objects.
  -     (font_range): New function.
  -     (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
  -     (Ffont_xlfd_name): Adjusted for the change of font-related objects.
  -     (Fcopy_font_spec, Fmerge_font_spec): New function.
  -     (Ffont_family_list): Renamed from list-families.
  -     (Finternal_set_font_style_table): Arguments changed.
  -     (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
  -     (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
  -     change of font-related objects.
  -     (syms_of_font): Delete "ifdef USE_FONT_BACKEND".  DEFSYM new symbols.
  -
  -     * fontset.h (struct font_info): Delete it.  Most members go to
  -     struct font.
  -     (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
  -     (enum FONT_SPEC_INDEX): Delete it.
  -     (font_info, list_fonts_func, load_font_func, query_font_func)
  -     (set_frame_fontset_func, find_ccl_program_func)
  -     (get_font_repertory_func, new_fontset_from_font_name): Delete
  -     externs.
  -     (fontset_from_font_name): Extern it.
  -     (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
  -     (FONT_INFO_FROM_FACE): Deleted.
  -     (face_for_font): Adjust prototype.
  -
  -     * fontset.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.
  -     (get_font_info_func, list_font_func, load_font_func)
  -     (query_font_func, set_frame_fontset_func, find_ccl_program_func)
  -     (get_font_repertory_func): Delete them.
  -     (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
  -     (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
  -     (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
  -     (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
  -     (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
  -     (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.
  -     (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.
  -     (free_face_fontset): Do nothing if the face has no fontset.
  -     (face_suitable_for_char_p): Use new macros to ref/set elements of
  -     rfont-def.
  -     (face_for_char): Likewise.  Call face_for_char with font_object.
  -     (fs_load_font): Delete.  Delete #pragma surrounding it.
  -     (fs_query_fontset): Use strcasecmp instead of strcmp.
  -     (generate_ascii_font_name): Adjusted for the format change of
  -     font-spec.
  -     (Fset_fontset_font): Likewise.  Use new macros to set elements of
  -     font-def.
  -     (Fnew_fontset): Use font_unparse_xlfd to generate
  -     FONTSET_ASCII (fontset).
  -     (new_fontset_from_font_name): Deleted.
  -     (fontset_from_font): Renamed 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.
  -     (Ffont_info): Adjusted for the format change of font-spec.
  -     (Finternal_char_font): Likewise.
  -     (Ffontset_info): Likewise.
  -     (syms_of_fontset): Don't check load_font_func.
  -
  -     * fns.c (internal_equal): Handle PREV_FONT.
  -
  -     * frame.h: Delete USE_FONT_BACKEND conditional.
  -
  -     * frame.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.
  -     (x_set_font): Call x_new_font, not x_new_fontset2.
  -     (x_set_font_backend): Use FRAME_FONT macro to check if a font is
  -     already set for the frame.
  -
  -     * ftfont.c (ftfont_pattern_entity): Argument FRAME removed.  Make
  -     a font-entity by font_make_entity.  Use font_intern_prop instead
  -     of intern_downcase.  Use FONT_SET_STYLE to set a style-related
  -     font property.  If a font is scalable, set avgwidth property to 0.
  -     Set font-entity property by font_put_extra.
  -     (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
  -     (ffont_driver): Adjusted for the change of struct font_driver.
  -     (ftfont_spec_pattern): New function.
  -     (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_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
  -     dpyinfo->smallest_char_width.
  -     (ftfont_close): Don't free `struct font'.
  -     (ftfont_has_char): Adjusted for the format change of font-entity.
  -     (ftfont_encode_char, ftfont_text_extents): Likewise.
  -
  -     * ftxfont.c (ftxfont_list): Return a list, not vector.
  -     (ftxfont_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
  -     dpyinfo->smallest_char_width.
  -     (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
  -     (ftxfont_draw): Adjusted for the change of struct font.
  -
  -     * image.c (image_ascent): Don't include "charset.h".  Include
  -     "character.h" and "font.h".
  -
  -     * lisp.h (enum pvec_type): New member PREV_FONT.
  -     (Fassoc_string): EXFUN it.
  -
  -     * print.c: Include font.h.
  -     (print_object): Handle font-related objects.
  -
  -     * xdisp.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.
  -     (handle_auto_composed_prop): Do nothing if it->f is not on a
  -     window system.  Check how many following characters can be
  -     displayed by the same font.
  -     (calc_pixel_width_or_height): Type of the 4th arg is changed to
  -     'struct font *'.
  -     (get_char_face_and_encoding): Assign the whole encoding task to
  -     the `encode-char' method of a font driver.
  -     (fill_composite_glyph_string): Adjusted for the change of `struct
  -     face' and `struct glyph_string'.
  -     (fill_glyph_string): Likewise.
  -     (get_per_char_metric): Arguments changed.
  -     (x_get_glyph_overhangs): Adjusted for the change of `struct face'
  -     and `struct glyph_string'.
  -     (produce_stretch_glyph, calc_line_height_property)
  -     (x_produce_glyphs): Likewise.
  -
  -     * xfaces.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.  Use
  -     FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
  -     (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.
  -     (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.
  -     (Fx_family_fonts): Use font_list_entities, and sort fonts by
  -     compare_fonts_by_sort_order.
  -     (Fx_font_family_list): Call Ffont_family_list.
  -     (face_numeric_value, face_numeric_weight, face_numeric_slant)
  -     (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
  -     (face_symbolic_slant, face_symbolic_swidth)
  -     (split_font_name_into_vector, build_font_name_from_vector)
  -     (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
  -     (font_rescale_ratio, split_font_name, build_font_name)
  -     (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.
  -     (Fx_list_fonts): Use Ffont_list.
  -     (LFACE_AVGWIDTH): Deleted.
  -     (check_lface_attrs): Don't check LFACE_AVGWIDTH.  Check LFACE_FONT
  -     by FONTP.
  -     (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
  -     (set_lface_from_font_name): Delete it.
  -     (set_lface_from_font): Renamed from
  -     set_lface_from_font_and_fontset.  Caller changed.  Don't set
  -     LFACE_AVGWIDTH.  Use FONT_XXX_FOR_FACE to get a symbol suitable
  -     for face.
  -     (merge_face_vectors): Copy font-spec if necessary.
  -     Clear properties of the font-spec if necessary.
  -     (merge_face_ref): Clear properties of the font-spec if necessary.
  -     (Finternal_set_lisp_face_attribute): Likewise.
  -     (set_font_frame_param): Use font_load_for_lface to load a
  -     font-object, and call Fmodify_frame_parameters with it.
  -     (x_update_menu_appearance): Don't check LFACE_AVGWIDTH.  Get XLFD
  -     font name by Ffont_xlfd_name.
  -     (Finternal_lisp_face_attribute_values): Don't check QCweight,
  -     QCslant, and QCwidth.
  -     (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.
  -     (face_for_font): The 2nd argument changed.
  -     (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
  -     Check atomic font properties by case insensitive.
  -     (realize_non_ascii_face): Set face->overstrike correctly.
  -     (realize_x_face): Likewise.  Check if LFACE_FONT is a font_object.
  -     (dump_realized_face): Get font name from
  -     font->props[FONT_NAME_INDEX].  Don't print font_info_id.
  -
  -     * xfns.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.
  -     (xic_create_xfontset): Original code deleted and renamed from
  -     xic_create_xfontset2.  Use FRAME_FONT, not FRAME_FONT_OBJECT.
  -     (x_make_gc): Don't set GCFont in GCs.
  -     (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
  -     opened by "fixed".
  -     (syms_of_xfns): Don't set get_font_info_func, load_font_func,
  -     find_ccl_program_func, query_font_func, set_frame_fontset_func,
  -     get_font_repertory_func.
  -
  -     * xfont.c: Include <stdlib.h> and "ccl.h".
  -     (struct xfont_info): New structure.
  -     (xfont_query_font): Deleted.
  -     (xfont_find_ccl_program): Renamed from x_find_ccl_program and
  -     moved from xterm.c.
  -     (xfont_driver): Adjusted for the change of struct font_driver.
  -     (compare_font_names): New function.
  -     (xfont_list_pattern): Sort font names case insensitively.  Make
  -     font_entity by calling font_make_entity.  Avoid auto-scaled fonts.
  -     (xfont_list): Return a list, not vector.
  -     (xfont_match): If the font doesn't have QCname property, generate
  -     a name from the other font properties.
  -     (xfont_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
  -     dpyinfo->smallest_char_width.
  -     (xfont_close): Don't free struct font.
  -     (xfont_prepare_face): Adjusted for the change of struct font.
  -     (xfont_done_face): Deleted.
  -     (xfont_has_char): Adjusted for the change of struct font.
  -     (xfont_encode_char, xfont_draw): Likewise.
  -     (xfont_check): New function.
  -
  -     * xftfont.c (xftfont_list): Adjusted for the change of `list'
  -     callback function.
  -     (xftfont_match): Adjusted for the format change of font-entity.
  -     (xftfont_open): Adjusted for the format change of font-entity and
  -     font-object.  Adjusted for the change of struct font.  Return a
  -     font-object.  Don't update dpyinfo->smallest_font_height and
  -     dpyinfo->smallest_char_width.
  -     (xftfont_close): Block input while calling XftFontClose.
  -     (xftfont_prepare_face): Don't block input while calling
  -     xftfont_get_colors.  Adjusted for the change of struct font.
  -     (xftfont_shape): Return value of error case fixed.
  -
  -     * xrdb.c (x_load_resources): Don't setup a fontset resource.
  -
  -     * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
  -     conditionals.
  -     (FONT_WIDTH): Return (f)->max_width.
  -     (struct x_display_info): Delete member `font'.
  -     (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
  -     (x_find_ccl_program, x_get_font_repertory): Delete externs.
  -     (struct x_output): Change type of `font' to `struct font *'.
  -
  -     * 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_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
  -     (x_compute_glyph_string_overhangs): Adjusted for the change of
  -     `struct face'.
  -     (x_draw_glyph_string_foreground)
  -     (x_draw_composite_glyph_string_foreground): Likewise.
  -     (x_draw_glyph_string): Likewise.  Use font->underline_position and
  -     font->underline_thickness.
  -     (x_new_font): Renamed from x_new_fontset2.
  -     (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
  -     (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_find_ccl_program): Renamed and moved to xfont.c.
  -     (x_redisplay_interface): Adjusted for the change of `struct
  -     redisplay_interface'.
  -
  -     * w32fns.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.  Surround non-used
  -     code by "#ifdef OLD_FONT" and "endif".
  -     (Fw32_select_font): Use FONT_COMPAT to get old font structure.
  -
  -     * w32font.h (struct w32font_info): New member.
  -     (FONT_COMPAT): New macro.
  -     (w32font_open_internal): Prototype adjusted.
  -
  -     * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
  -     OLD_FONT" and "endif".
  -
  -     * w32font.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.
  -     (w32font_open): Return a font-object.  Make a font-object by
  -     font_make_object.  Adjusted for the change of struct w32font_info.
  -     (w32font_close): Don't free struct font.  Adjusted for the change
  -     of struct w32font_info.
  -     (w32font_encode_char, w32font_text_extents, w32font_draw):
  -     Adjusted for the change of struct w32font_info.
  -     (w32font_draw): Likewise.
  -     (w32font_list_internal): Return a list, not vector.
  -     (w32font_open_internal): Change the 4th arg to font-object.
  -     Adjusted for the change of struct w32font_info and font-object format.
  -     (add_font_name_to_list): Don't downcase names.
  -     (w32_enumfont_pattern_entity): Make a font-entity by
  -     font_make_entity.  Adjusted for the format change of font-entity.
  -     Use FONT_SET_STYLE to set a style-related font property.  If a
  -     font is scalable, set avgwidth property to 0.  Set font-entity
  -     property by font_put_extra.
  -     (font_matches_spec): Adjusted for the format change of font-entity.
  -     (w32_weight_table, w32_decode_weight): New variables.
  -     (w32_encode_weight): New function.
  -     (fill_in_logfont): Adjusted for the format change of font-spec.
  -     (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
  -     weight value.
  -     (w32font_driver): Adjusted for the change of struct font_driver.
  -
  -     * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
  -     conditionals.  Don't check enable_font_backend.  Surround non-used
  -     code by "#ifdef OLD_FONT" and "endif".
  -     (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
  -     (FONT_AVG_WIDTH): Adjusted for the change of struct font.
  -
  -     * w32term.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.  Surround non-used
  -     code by "#ifdef OLD_FONT" and "endif".
  -
  -     * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
  -     (uniscribe_open): Return value changed to font-object.
  -     Adjusted for the format change of font-object.
  -     (uniscribe_otf_capability): Adjusted for the change of struct font.
  -     (add_opentype_font_name_to_list): Don't downcase names.
  -     (uniscribe_font_driver): Adjusted for the change of struct
  -     font_driver.
  -
  -2008-05-13  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * dispnew.c (update_frame_1): Check if tty output is still valid
  -     before flushing it.
  -
  -2008-05-13  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
  -     to Gtk+ menus.
  -
  -2008-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * dired.c (file_name_completion): Tweak the code so as to always do it
  -     in a single pass.  Tighten the scope of some variables.
  -
  -     * dired.c (Qdefault_directory): New var.
  -     (file_name_completion): Use it instead of Fexpand_file_name.
  -     (syms_of_dired): Initialize it.
  -
  -2008-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * fileio.c (double_dollars): Remove dead code.
  -
  -2008-05-10  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
  -     Mention w32-get-true-file-attributes in doc string.
  -
  -     * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
  -
  -2008-05-09  Glenn Morris  <rgm@gnu.org>
  -
  -     * fileio.c (Fread_file_name): Remove reference to insdef, deleted
  -     2008-04-23.
  -
  -2008-05-09  Eli Zaretskii  <eliz@gnu.org>
  -
  -     Support for reporting owner and group of each file on MS-Windows:
  -     * dired.c (stat_uname, stat_gname): New functions, with special
  -     implementation for w32.
  -     (Ffile_attributes): Use them instead of getpwuid and getgrgid.
  -
  -     * w32.c: Rename the_passwd_* to dflt_passwd_*.
  -     (dflt_group_name): New static variable.
  -     (dflt_group): Rename from the_group.
  -     (init_user_info): Init dflt_group fields.  Get user's group name
  -     from LookupAccountSid.
  -     (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
  -     (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
  -     New initialization states.
  -     (globals_of_w32): Initialize them to zero.  Initialize the default
  -     group name to "None".
  -     (GetFileSecurity_Name): New global var, the name of the function
  -     to call for GetFileSecurity.
  -     (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
  -     (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
  -     (get_file_security, get_security_descriptor_owner)
  -     (get_security_descriptor_group, is_valid_sid)
  -     (get_file_security_desc, get_rid, get_name_and_id)
  -     (get_file_owner_and_group): New functions.
  -     (stat): Use get_file_security_desc and get_file_owner_and_group to
  -     report the owner and primary group of each file.  Don't ignore the
  -     high 32 bits of file's size, now that st_size is 64-bit wide.
  -     Fix test when to get true file attributes.
  -     (init_user_info): Use get_rid instead of equivalent inline code.
  -     (fstat): Don't ignore the high 32 bits of file's size.
  -
  -2008-05-09  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * image.c (png_load): Use correct bit-depth for setting background
  -     color.
  -
  -2008-05-08  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
  -     epa-hook.elc.
  -
  -2008-05-08  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * font.c (Ffont_match_p): Don't use `iff' in docstring.
  -
  -2008-05-07  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * macfns.c (Fx_create_frame): Make a copy of frame parameters
  -     because the original parameters are in pure storage now.
  -     (mac_window): Remove unused params.  Update callers.
  -
  -2008-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * lread.c (substitute_object_recurse): Use lower-level primitives.
  -     Don't signal errors when traversing sub-char-tables.
  -     Don't loop over all the possible characters when traversing char-tables.
  -
  -     * print.c (print_preprocess): Add sub-char-tables to the print-table,
  -     just like we do in print.c.
  -
  -2008-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * minibuf.c (Ftry_completion): Remove code left over from when we used
  -     scmp instead of Fcompare_strings.
  -
  -2008-05-04  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
  -
  -2008-05-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
  -     Create bitmap context in native byte order.
  -
  -     * macterm.c (XDrawLine)
  -     (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
  -     context in native byte order.
  -
  -2008-05-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * config.in: Regenerate.
  -
  -     * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
  -     New definitions for Image I/O support.
  -     (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
  -     (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
  -     [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
  -     (mac_data_provider_release_data, image_load_image_io)
  -     [USE_MAC_IMAGE_IO]: New functions.
  -     (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
  -     (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
  -     (init_image_func_pointer) [MAC_OSX]: Remove function.
  -     (image_load_quartz2d) [MAC_OSX]: Check availability of
  -     CGImageCreateWithPNGDataProvider at compile time.
  -     Use lowercase `false' for boolean constant.
  -     (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
  -     Use image_load_image_io.
  -     (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
  -     Don't check MyCGImageCreateWithPNGDataProvider.
  -     (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
  -     Don't call init_image_func_pointer.
  -
  -     * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
  -
  -     * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
  -     Make variable non-static.
  -     (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
  -     [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
  -
  -     * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
  -     (RED_FROM_ULONG): Mask off higher bits.
  -     (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
  -
  -     * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
  -     Include AvailabilityMacros.h.
  -     (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
  -     (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
  -
  -2008-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * chartab.c (Fset_char_table_range): If range is t, really set all
  -     chars to that value.
  -
  -2008-05-03  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * dired.c (Ffile_attributes): Don't allow the device number become
  -     negative.
  -
  -2008-05-02  Daiki Ueno  <ueno@unixuser.org>
  -
  -     * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
  -
  -2008-05-02  Juri Linkov  <juri@jurta.org>
  -
  -     * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
  -     (Fread_variable, Fread_buffer, Fcompleting_read): Document the
  -     DEFAULT argument as a list of default values in docstrings.
  -
  -2008-05-01  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * puresize.h (BASE_PURESIZE): Increase to 1210000.
  -
  -2008-05-01  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * dispnew.c (change_frame_size_1): Preserve small windows when
  -     shrinking frames by calling set_window_height|width with third
  -     arg 2.
  -
  -     * window.h (struct window): Replace field too_small_ok by field
  -     resize_proportionally.
  -
  -     * window.c (make_window): Initialize resize_proportionally.
  -     (enlarge_window): Temporarily set resize_proportionally to make
  -     sure that shrink_windows does scale the window proportionally.
  -     (shrink_windows): When window has resize_proportionally set try
  -     to shrink it proportionally by stealing from other windows.
  -     (struct saved_window, Fset_window_configuration)
  -     (compare_window_configurations): Handle resize_proportionally.
  -     (WINDOW_TOTAL_SIZE): New macro.
  -     (window_min_size, shrink_windows, size_window): Use it.
  -     (check_min_window_sizes): Remove.  Invalid values of
  -     window-min-height|width are handled by window_min_size_2 now.
  -     (size_window, Fsplit_window, enlarge_window)
  -     (adjust_window_trailing_edge, grow_mini_window): Don't call
  -     check_min_window_sizes.
  -     (window_min_size_2, window_min_size_1, window_min_size):
  -     New argument safe_p for retrieving "safe" minimum sizes.
  -     (Fdisplay_buffer, Fsplit_window, enlarge_window)
  -     (adjust_window_trailing_edge, grow_mini_window):
  -     Adjust arguments of window_min_size... functions.
  -     (shrink_windows): Argument min_size removed.  New argument
  -     safe_p allows shrinking windows to their safe minimum sizes.
  -     Calculate minimum size and decide whether a window shall be
  -     deleted for each window individually.
  -     (size_window): When nodelete_p equals 2, tell shrink_windows to
  -     delete windows only if their new minimum size is no more safe.
  -     (shrink_window_lowest_first): Call window_min_size_1 to make
  -     sure to preserve modeline of bottom-most window when resizing
  -     the minibuffer.
  -     (Fset_window_configuration, Fcurrent_window_configuration)
  -     (compare_window_configurations): Do not handle
  -     window-min-height|width any more.
  -     (syms_of_window): Clarify window-min-height|width doc-strings.
  -
  -2008-04-30  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * dired.c (file_name_completion): Fix up the encoding/decoding issue
  -     some more.  Copy some of the code from Ftry_completions.
  -     Remove special case code that dates back to initial revision when the
  -     slash was only added when necessary and that can't trigger nowadays.
  -
  -2008-04-27  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_prop_validate): Signal `error' instead of `font'.
  -
  -2008-04-29  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32fns.c (Fw32_battery_status): New defun.
  -     (syms_of_w32fns): Defsubr it.
  -
  -2008-04-28  Andreas Schwab  <schwab@suse.de>
  -
  -     * dired.c (file_name_completion): Fix another mixing of encoded
  -     and decoded names.
  -
  -2008-04-28  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
  -
  -2008-04-27  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * fringe.c (Fdefine_fringe_bitmap): Doc fix.
  -
  -2008-04-27  Andreas Schwab  <schwab@suse.de>
  -
  -     * dired.c (file_name_completion): Fix inappropriate mixing of
  -     encoded and decoded names.
  -
  -     * xterm.c (XTread_socket): Fix use of uninitialized variable.
  -
  -     * puresize.h (BASE_PURESIZE): Increase to 1200000.
  -
  -2008-04-26  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
  -     2008-03-31, it's not needed anymore with `struct stat' definition
  -     on nt/inc/sys/stat.h.  Undo changes from 2007-01-12 and 2007-01-13
  -     for the same reasons.
  -
  -2008-04-25  Dennis Gilmore  <ausil@fedoraproject.org>  (tiny change)
  -
  -     * m/sparc.h: Additional redefinitions for GNU/Linux.
  -
  -2008-04-23  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
  -     (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
  -     (Qmouse_drag_overlay) [MAC_OSX]: New variable.
  -     (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
  -     (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
  -     (mac_ax_selected_text_range) [MAC_OSX]: New functions.
  -     (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
  -     Likewise.
  -
  -     * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
  -     (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
  -     (mac_ax_number_of_characters): Add externs.
  -     (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
  -     [USE_MAC_TSM]: Likewise.
  -     (mac_handle_text_input_event) [MAC_OSX]:
  -     Handle kEventTextInputOffsetToPos for no active input area case.
  -     Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
  -     (mac_handle_document_access_event)
  -     [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
  -     (install_application_handler) [MAC_OSX]: Register handlers for
  -     kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
  -     (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
  -     Register mac_handle_document_access_event.
  -
  -     * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
  -     Make functions non-static.
  -
  -2008-04-23  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
  -     (read_file_name_completion_ignore_case, insert_default_directory)
  -     (Qdefault_directory): Move to minibuffer.el.
  -     (Fread_file_name): Call the new `read-file-name' instead.
  -
  -2008-04-23  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
  -     Make function non-static.
  -     (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
  -     Remove function.
  -     (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
  -     Move to mactoolbox.c.
  -     (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
  -
  -     * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
  -     (mac_rect_make): New macro.
  -
  -     * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
  -     instead of float.
  -     (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
  -     (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
  -     (XSetBackground) [USE_CG_DRAWING]: Likewise.
  -     (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
  -     CGRectMake.
  -     (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
  -     (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
  -     (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
  -     (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
  -     instead of WindowRef in argument type.
  -     (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
  -     (mac_invert_rectangle): Use CGContextSetBlendMode if available.
  -     (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
  -     instead of DISPLAY.  All uses changed.
  -     (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
  -     (x_calc_absolute_position): Simplify so as not to use
  -     FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
  -
  -     * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
  -     instead of WindowRef in argument type.
  -     (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
  -     [TARGET_API_MAC_CARBON]: Remove externs.
  -     (create_apple_event, mac_event_parameters_to_lisp)
  -     [TARGET_API_MAC_CARBON]: Add externs.
  -
  -     * mactoolbox.c (Vmac_ts_script_language_on_focus)
  -     (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
  -     (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
  -     is clicked.
  -     (x_activate_menubar): Remove extern for saved_menu_event_location.
  -     (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
  -     Move from mac.c.
  -
  -2008-04-23  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
  -     [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
  -
  -2008-04-23  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
  -     attributes only for local files.
  -
  -     * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
  -     default to Qlocal.
  -
  -2008-04-22  Juri Linkov  <juri@jurta.org>
  -
  -     * buffer.c (Fswitch_to_buffer): Change interactive spec to call
  -     read-buffer-to-switch instead of using the letter "B".
  -
  -2008-04-21  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * fileio.c (Qdefault_directory): New variable.
  -     (Fread_file_name): Use it to pass `dir' to the completion functions.
  -
  -2008-04-20  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
  -
  -2008-04-19  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * keyboard.c (Vpre_help_message): Remove.
  -     (show_help_echo): Remove default C code.
  -
  -     * dired.c (directory_files_internal, file_name_completion):
  -     Only call ENCODE_FILE if the string is indeed decoded.
  -
  -2008-04-18  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * Makefile.in (TOOLKIT_DEFINES): Remove.
  -     (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
  -
  -2008-04-18  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * Makefile.in (MAC_OBJ): Add mactoolbox.o.
  -     (mactoolbox.o): New target.
  -
  -     * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
  -     Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
  -
  -     * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
  -     Use mac_set_frame_window_background instead of XSetWindowBackground.
  -     (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
  -     Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
  -     (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
  -     instead of SetWindowTitleWithCFString.
  -     (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
  -     Move function to mactoolbox.c.
  -     (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
  -     Use mac_set_window_modified instead of SetWindowModified.
  -     Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
  -     (mac_window, x_create_tip_frame): Use mac_create_frame_window.
  -     (Fx_focus_frame): Use mac_front_non_floating_window instead of
  -     FrontNonFloatingWindow.  Use mac_activate_window instead of
  -     ActivateWindow.  Use mac_active_non_floating_window instead of
  -     ActiveNonFloatingWindow.
  -     (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
  -     Use mac_show_hourglass and mac_hide_hourglass.
  -     (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
  -     instead of GetGlobalMouse.
  -     (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
  -     instead of MoveWindow/SizeWindow/ShowWindow, respectively.
  -     Use mac_bring_window_to_front instead of BringToFront.
  -     (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
  -     mactoolbox.c.
  -     (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
  -     mac_file_dialog in mactoolbox.c.  Use mac_file_dialog.
  -     (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
  -     mactoolbox.c.
  -
  -     * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
  -     (XtPointer): Move typedef from macmenu.c.
  -     (enum button_type): Move enum from macmenu.c.
  -     (widget_value): Move typedef from macmenu.c.
  -     (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
  -     (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
  -     (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
  -     (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
  -     (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
  -     (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
  -     (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
  -     (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
  -     (Selection): Move typedef from macselect.c.
  -     (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
  -     macterm.c.
  -     (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
  -     (mac_is_window_collapsed, mac_bring_window_to_front)
  -     (mac_send_window_behind, mac_hide_window, mac_show_window)
  -     (mac_collapse_window, mac_front_non_floating_window)
  -     (mac_active_non_floating_window, mac_activate_window)
  -     (mac_move_window_structure, mac_move_window, mac_size_window)
  -     (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
  -
  -     * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
  -     (enum mac_menu_kind): Move enum to mactoolbox.c.
  -     (min_menu_id): Move variable to mactoolbox.c.
  -     (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
  -     (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
  -     (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
  -     (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
  -     [TARGET_API_MAC_CARBON]: Likewise.
  -     (XtPointer): Move typedef to macgui.h.
  -     (enum button_type): Move enum to macgui.h.
  -     (widget_value): Move typedef to macgui.h.
  -     (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
  -     (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
  -     (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
  -     (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
  -     (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
  -     (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
  -     (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
  -     (popup_activated_flag): Make variable non-static.
  -     (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
  -     (add_menu_item, fill_menu, dispose_menus):
  -     Move functions to mactoolbox.c.
  -     (restore_show_help_function, menu_target_item_handler)
  -     (install_menu_target_item_handler, mac_handle_dialog_event)
  -     (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
  -     [TARGET_API_MAC_CARBON]: Likewise.
  -     (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
  -     (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
  -     (find_and_call_menu_selection, name_is_separator): Make function
  -     non-static.
  -     (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
  -     to mactoolbox.c.
  -     (set_frame_menubar): Don't call install_menu_quit_handler.
  -     (menu_item_selection): New variable.
  -     (mac_menu_show): Use create_and_show_popup_menu.
  -     (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
  -     selection but set variable menu_item_selection.  All uses changed.
  -     (mac_fill_menubar): Rename from fill_menubar.  All uses changed.
  -     Call install_menu_quit_handler.  Move to mactoolbox.c.
  -
  -     * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
  -     (Selection): Move typedef to macgui.h.
  -     (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
  -     (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
  -     Make variables non-static.
  -     (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
  -     (mac_handle_apple_event, cleanup_all_suspended_apple_events):
  -     Make functions non-static.
  -     (Vmac_service_selection) [MAC_OSX]: Likewise.
  -     (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
  -     (mac_valid_selection_target_p, mac_clear_selection)
  -     (mac_get_selection_ownership_info, mac_valid_selection_value_p)
  -     (mac_put_selection_value, mac_selection_has_target_p)
  -     (mac_get_selection_value, mac_get_selection_target_list)
  -     (init_apple_event_handler, install_drag_handler, remove_drag_handler):
  -     Move functions to mactoolbox.c.
  -     (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
  -     Likewise.
  -     (copy_scrap_flavor_data, mac_handle_service_event)
  -     (install_service_handler) [MAC_OSX]: Likewise.
  -     (syms_of_macselect) <Vmac_dnd_known_types>:
  -     Use mac_dnd_default_known_types.
  -
  -     * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
  -     Move to mactoolbox.c.
  -     (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
  -     (Fx_selection_owner_p): Add EXFUN.
  -     (install_window_handler, remove_window_handler, XSetWindowBackground):
  -     Remove externs.
  -     (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
  -     (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
  -     (x_raise_frame, x_lower_frame, mac_alert_sound_play)
  -     (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
  -     (mac_convert_frame_point_to_global, mac_set_frame_window_background)
  -     (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
  -     (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
  -     (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
  -     (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
  -     (create_and_show_popup_menu, mac_get_selection_from_symbol)
  -     (mac_valid_selection_target_p, mac_clear_selection)
  -     (mac_get_selection_ownership_info, mac_valid_selection_value_p)
  -     (mac_put_selection_value, mac_selection_has_target_p)
  -     (mac_get_selection_value, mac_get_selection_target_list): Add externs.
  -     (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
  -     (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
  -     (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
  -     (mac_run_loop_run_once) [MAC_OSX]: Likewise.
  -     (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
  -     (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
  -     (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
  -     (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
  -
  -     * mactoolbox.c: New file.
  -
  -2008-04-18  Jason Rumney  <jasonr@gnu.org>
  -
  -     * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
  -
  -2008-04-18  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * character.c (Fmultibyte_char_to_unibyte):
  -     Return latin1 chars unchanged.
  -
  -     * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
  -     relocated if it points to `name'.
  -
  -2008-04-17  Kenichi Handa  <handa@m17n.org>
  -
  -     * data.c (Faset): Allow setting a multibyte character in an
  -     ASCII-only unibyte string.
  -
  -     * lisp.h (STRING_SET_MULTIBYTE): New macro.
  -
  -2008-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
  -     done in config.h.
  -
  -2008-04-16  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * character.c (Fchar_bytes, Fchar_width, Fstring_width)
  -     (Fchar_direction): Add usage in the docstring.
  -
  -2008-04-15  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * keyboard.c (read_key_sequence): Remove always-true checks.
  -
  -2008-04-14  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (w32font_open_internal): Set max_bounds.descent in
  -     compatibility struct, for better underline positioning.
  -
  -2008-04-13  David Hansen  <david.hansen@gmx.net>
  -
  -     * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
  -     string.
  -
  -2008-04-12  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * m/hp800.h (XUINT, XSET): Remove.
  -
  -2008-04-12  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
  -     previous change.
  -
  -2008-04-12  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
  -     Relocate `nm' after calling DECODE_FILE, in case the GC was run.
  -
  -2008-04-11  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * keymap.h (map_keymap_canonical): Declare.
  -     * xmenu.c (single_keymap_panes): Use it.
  -
  -2008-04-11  Glenn Morris  <rgm@gnu.org>
  -
  -     * eval.c (Fdefvaralias): If the alias is bound and the target is not,
  -     set the target's value to that of the alias.
  -
  -2008-04-11  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * term.c (set_tty_color_mode): Left over typo.
  -
  -2008-04-10  Michael Albinus  <michael.albinus@gmx.de>
  -
  -     * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
  -     only after check for file name handler functions.  Signal, when
  -     native functionality is not supported.
  -     (syms_of_fileio): Declare it unconditionally.
  -
  -2008-04-10  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
  -     (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
  -
  -     * w32.c (logon_network_drive): Also logon to remote drives that
  -     are mapped to drive letters.
  -
  -2008-04-10  Glenn Morris  <rgm@gnu.org>
  -
  -     * xdisp.c (truncate-partial-width-windows): Doc fix.
  -
  -2008-04-10  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
  -     Move functions to minibuffer.el.
  -     (syms_of_fileio): Don't declare them.
  -
  -2008-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
  -     (syms_of_minibuf): Remove its initialization.
  -
  -     * minibuf.c (temp_echo_area_glyphs): Remove unused function.
  -
  -2008-04-09  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
  -
  -2008-04-09  Jason Rumney  <jasonr@gnu.org>
  -
  -     * makefile.w32-in (distclean): Delete makefile too.
  -     (maintainer-clean): New target.
  -
  -     * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
  -
  -     * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
  -     for new font backend and composite cases.
  -
  -2008-04-09  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
  -     Most of the code moved to run_timers.
  -     (do_pending_atimers): Call run_timers.
  -     (run_timers): New function.
  -
  -     * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
  -     run atimers.
  -
  -     * process.c (wait_reading_process_output): The same as above.
  -
  -2008-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * minibuf.c (last_exact_completion): Remove variable.
  -     (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
  -     (complete_and_exit_1, complete_and_exit_2)
  -     (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
  -     (Fdisplay_completion_list, display_completion_list_1)
  -     (Fminibuffer_completion_help, Fself_insert_and_exit)
  -     (Fexit_minibuffer, Fminibuffer_message): Move functions to
  -     minibuffer.el.
  -     (syms_of_minibuf): Remove corresponding initializations.
  -
  -     * keyboard.c (Qdeactivate_mark): New var.
  -     (command_loop_1): Use it to call `deactivate-mark'.
  -     (syms_of_keyboard): Initialize it.
  -
  -     * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
  -     to another frame.
  -     * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
  -     Don't call set_tty_color_mode.
  -     (store_frame_param): Reset previous_frame rather than call
  -     set_tty_color_mode.
  -     * term.c (set_tty_color_mode): Rewrite.
  -     * dispextern.h (set_tty_color_mode): New type.
  -     * termchar.h (struct tty_display_info): Add `previous_color_mode'.
  -
  -2008-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
  -     for generic chars, which do not exist any more in emacs-unicode.
  -
  -2008-04-08  Michael Albinus  <michael.albinus@gmx.de>
  -
  -     * coding.c (detect_coding_emacs_mule)
  -     (Ffind_operation_coding_system): Fix typo.
  -
  -2008-04-08  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32uniscribe.c (SNAME): Extract only symbol name.
  -
  -     * w32font.h (struct w32_metric_cache): New struct.
  -     (w32font_info): Use it.
  -     (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
  -     (CACHE_BLOCKSIZE): New constants.
  -
  -     * w32font.c (Qja, Qko, Qzh): New symbols.
  -     (syms_of_w32font): Initialise them.
  -     (font_matches_spec): Use them to filter by language.
  -     (recompute_cached_metrics): Remove function.
  -     (compute_metrics, clear_cached_metrics): New functions.
  -     (w32font_encode_char): Use them to manage metric cache.
  -     (w32font_text_extents): Cache metrics for all glyphs on demand.
  -     Delay converting glyph indices to WORD until needed.
  -     (w32font_open_internal): Initialize metric cache to empty.
  -     (registry_to_w32_charset): Charset should always be a symbol.
  -     (fill_in_logfont, list_all_matching_fonts): Family should
  -     always be a symbol.
  -
  -2008-04-06  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
  -     Give up if glyph indices not supported.  Use uniscribe obtained
  -     ABC widths for individual metrics.  Map glyph clusters back to
  -     characters using fClusterStart flag.  Return number of glyphs
  -     produced, not chars processed.
  -     (uniscribe_shape): Map char at FROM to current glyph.
  -
  -2008-04-05  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
  -     Use SetMenuItemHierarchicalMenu.
  -
  -2008-04-05  Jason Rumney  <jasonr@gnu.org>
  -
  -     * image.c (pbm_load): Allow color values up to 65535.
  -     Throw an error if max_color_idx is outside the supported range.
  -     Report an error when image size is invalid.
  -     Read two bytes at a time when raw images have max_color_idx above 255.
  -
  -2008-04-05  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * w32.c (readdir): If FindFirstFile/FindNextFile return in
  -     cFileName a file name that includes `?' characters, use the 8+3
  -     alias in cAlternateFileName instead.
  -
  -2008-04-05  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
  -     append "CCL: Quitted" when the CCL program is quitted.
  -     (setup_ccl_program): Initialize ccl->quit_silently to zero.
  -
  -     * ccl.h (struct ccl_program): New member quit_silently.
  -
  -2008-04-05  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * search.c (compile_pattern_1): Treat non-nil and non-string of
  -     search-spaces-regexp as nil.
  -
  -     * minibuf.c (Fassoc_string): Tweak docstring.
  -
  -2008-04-05  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * dired.c (Ffile_attributes): Support inode numbers wider than 32
  -     bits.  Remove ugly WINDOWSNT-specific kludge introduced on
  -     2008-03-14 to force inode be positive.
  -
  -     * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
  -     _S_* ones, since we now use our own sys/stat.h.
  -     (stat, fstat): Don't mangle the inode number.
  -     (init_user_info): Don't restrict UID and GID to 0-60000 range.
  -
  -2008-04-04  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * frame.h (struct frame): Give one more bit to `visible' since we use
  -     values larger than 1 to indicate obscured frames on ttys.
  -
  -     * keymap.c (Qkeymap_canonicalize): New var.
  -     (Fmap_keymap_internal): New fun.
  -     (describe_map): Use keymap-canonicalize.
  -
  -     * undo.c (last_boundary_buffer, last_boundary_position): New vars.
  -     (Fundo_boundary): Set them.
  -     (syms_of_undo): Initialize them.
  -     (record_point): Use them instead of last_point_position*.
  -     (last_undo_buffer): Change type.
  -
  -2008-04-04  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (w32font_text_extents): Use font's ascent and descent.
  -     (recompute_cached_metrics): Don't set ascent and descent per char.
  -
  -     * w32uniscribe.c (uniscribe_check_otf): Fix last change.
  -     (uniscribe_check_otf): Add GC protection before consing.
  -     Rearrange loop for counting features.
  -
  -2008-04-03  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
  -     buffer with byte-size of source buffer.
  -
  -2008-04-03  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * callint.c (Fcall_interactively): Handle temporary region even
  -     when shift-select-mode is off.
  -
  -2008-04-03  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
  -
  -2008-04-03  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
  -     (CATEGORY_MASK_UTF_16): Likewise.
  -     (detect_coding_utf_16): Add heuristics to reject utf-16 for a
  -     binary file.
  -     (detect_coding): Add null-byte detection for a binary file.
  -     (detect_coding_system): Likewise.
  -
  -2008-04-03  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32uniscribe.c: New file.
  -
  -     * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
  -
  -     * w32font.h (uniscribe_check_otf): Declare for w32font.c.
  -
  -     * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
  -     (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
  -     (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
  -     (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
  -     (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
  -     (Qphonetic): New symbols.
  -     (syms_of_w32font): Initialize them.
  -     (font_supported_scripts): Use them.
  -     (w32font_list_family): List all charsets.
  -     (w32font_text_extents, recompute_cached_metrics): Fix metric
  -     calculations.
  -     (w32_enumfont_pattern_entity): Make full_type a DWORD.
  -     Give opentype fonts their own format.
  -     (font_matches_spec): New arguments backend and logfont.
  -     Handle :otf spec for uniscribe backend.
  -     (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
  -     (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
  -
  -     * w32fns.c (Fx_create_frame): Conditionally register uniscribe
  -     font backend.
  -     (globals_of_w32fns): Initialize uniscribe font backend.
  -
  -     * makefile.w32-in (CONFIG_H): New variable.  Use it to clean up
  -     dependencies.
  -     (w32uniscribe.$(O)): New file to build.
  -     (FONT_OBJ): Include w32uniscribe.$(O).
  -     (LIBS): Add uniscribe libraries.
  -
  -     * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
  -
  -2008-04-02  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * callint.c (Vshift_select_mode): New var.
  -     (Finteractive): Document new ^ spec.
  -     (Fcall_interactively): Call handle-shift-selection if the ^ spec
  -     is present.
  -
  -     * keyboard.c (Vthis_command_keys_shift_translated): New var.
  -     (command_loop_1): Avoid running the direct display versions of
  -     forward-char and backward-char if shift-selection may occur.
  -     (read_key_sequence): Set Vthis_command_keys_shift_translated if
  -     shift-translation takes place.
  -
  -     * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
  -     avoid clobbering by define-minor-mode.
  -
  -     * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
  -     (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
  -
  -     * syntax.c (Fforward_word): Add ^ interactive spec.
  -
  -     * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
  -     (Fscroll_right): Add ^ interactive spec.
  -
  -2008-04-01  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
  -
  -     * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
  -
  -     * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
  -
  -2008-03-31  Juri Linkov  <juri@jurta.org>
  -
  -     * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
  -
  -2008-03-30  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * gtkutil.c (xg_set_geometry): Fix indentation.
  -     (xg_resize_outer_widget): Remove.
  -     (x_wm_size_hint_off): Fix indentation.
  -     (xg_frame_set_char_size): Call flush_and_sync after
  -     gtk_window_resize.
  -     (x_wm_set_size_hint): Pass NULL as geometry window to
  -     gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
  -     Add menu bar and tool bar height to base height.
  -     (xg_update_frame_menubar, free_frame_menubar)
  -     (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
  -     (update_frame_tool_bar, free_frame_tool_bar):
  -     Change xg_resize_outer_widget to xg_frame_set_char_size.
  -
  -2008-03-30  Michael Albinus  <michael.albinus@gmx.de>
  -
  -     * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
  -     (Fdbus_call_method): New parameter TIMEOUT.
  -     (dbus-send-signal): Optimize UNGCPRO call.
  -
  -2008-03-29  Juri Linkov  <juri@jurta.org>
  -
  -     * window.c (Fdisplay_buffer): Move call to
  -     Vsplit_window_preferred_function out of conditions that check
  -     if window is eligible for vertical splitting.
  -     When Vsplit_window_preferred_function is non-nil, call it and use
  -     its non-nil return value as window.  Otherwise, continue doing
  -     vertical splitting using Fsplit_window with arg horflag=nil.
  -     (syms_of_window) <Vsplit_window_preferred_function>: Change the
  -     default value from `split-window' to nil.
  -
  -2008-03-29  Juri Linkov  <juri@jurta.org>
  -
  -     * callint.c (Fcall_interactively): Revert 2008-03-16 change
  -     for interactive code letters 'b' and 'B'.
  -
  -2008-03-29  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
  -     multibyte string.
  -
  -2008-03-29  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * keyboard.c (pending_funcalls): New var.
  -     (timer_check): Run it.
  -     (syms_of_keyboard): Initialize it.
  -     * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
  -     (Vdelete_terminal_functions): New vars.
  -     (syms_of_terminal): Initialize them.
  -     (Fdelete_terminal): Run delete-terminal-functions.
  -     * xdisp.c (safe_eval): Rewrite.
  -     (safe_call2): New fun.
  -     * frame.c (Qdelete_frame_functions): New var.
  -     (syms_of_frame): Initialize it.
  -     (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
  -     * lisp.h (safe_call2, pending_funcalls): Declare.
  -
  -2008-03-28  Andreas Schwab  <schwab@suse.de>
  -
  -     * indent.c (Fmove_to_column): Move declaration before statements.
  -
  -2008-03-27  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * frame.h (enum fullscreen_type): Give it a name.  Move it before use.
  -     (struct frame): Use bit fields for boolean vars.
  -
  -     * process.c (server_accept_connection): Simplify naming.
  -     (emacs_get_tty_pgrp): Use SDATA.
  -
  -     * coding.c (decode_coding_object): Fix last change.
  -
  -2008-03-27  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
  -
  -2008-03-27  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * charset.c (Fdefine_charset_internal): Change the way of
  -     registering charsets in Vcharset_order_list.
  -     (syms_of_charset): Make the charset `eight-bit' supplementary.
  -
  -2008-03-26  Alexandre Oliva  <aoliva@redhat.com>  (tiny change)
  -
  -     * regex.c (EXTEND_BUFFER): Change order of pointer addition
  -     operations, to avoid having the difference between pointers
  -     overflow.
  -
  -2008-03-26  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * indent.c (check_display_width): New fun.
  -     (scan_for_column): Use it.
  -
  -     * data.c (syms_of_data): Mark most-positive-fixnum and
  -     most-negative-fixnum as constants.
  -
  -     * xdisp.c (redisplay_internal): Reset selected_frame earlier.
  -
  -     * indent.c (scan_for_column): Extract from current_column_1.
  -     Merge with the same code from Fmove_to_column.
  -     (current_column_1, Fmove_to_column): Use it.
  -
  -2008-03-25  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * keymap.c (map_keymap_internal): New fun.
  -     (map_keymap): Use it.
  -     (Fmap_keymap_internal): New fun.
  -     (Fmap_keymap): Remove left-out test from before make_save_value.
  -
  -     * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
  -
  -     * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
  -     Use XCAR/XCDR.
  -
  -     * process.h (struct Lisp_Process): Remove filter_multibyte.
  -     * process.c (QCfilter_multibyte): Remove.
  -     (setup_process_coding_systems): Don't use filter_multibyte.
  -     (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
  -     (read_process_output): Don't adjust multibyteness to filter_multibyte.
  -     (Fset_process_filter_multibyte): Change the coding-system to
  -     approximate the previous behavior.
  -     (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
  -     coding-system.
  -
  -     * coding.c (decode_coding_object): When not decoding into a buffer,
  -     obey the coding system's preference of (uni|multi)byte.
  -
  -2008-03-24  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
  -     every char is changed and has a different byte-length.
  -     (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
  -     Fix int -> EMACS_INT.
  -
  -2008-03-23  David Hansen  <david.hansen@gmx.net>
  -
  -     * dbusbind.c (xd_read_message): Remove extra copying of message
  -     strings.  Check for NULL `interface' or `member'.
  -
  -2008-03-22  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * w32.c (readdir): If FindFirstFile/FindNextFile return in
  -     cFileName a file name that includes `?' characters, use the 8+3
  -     alias in cAlternateFileName instead.
  -
  -2008-03-21  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
  -
  -2008-03-20  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
  -     (set_point, set_point_both): Use EMACS_INT.  Remove `buffer' arg,
  -     work on current_buffer only instead (that was already the case
  -     for some of the code anyway).
  -     * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
  -     (temp_set_point, temp_set_point_both): Use EMACS_INT.
  -     (SET_PT, SET_PT_BOTH): Adjust.
  -     * intervals.h (set_point, temp_set_point, set_point_both)
  -     (temp_set_point_both): Remove redundant declarations.
  -
  -2008-03-20  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * fileio.c (Finsert_file_contents):
  -     * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
  -     * buffer.h (BUF_SET_PT): Remove.  set_point_both doesn't work right
  -     when buffer != current_buffer anyway.
  -
  -2008-03-20  Andreas Schwab  <schwab@suse.de>
  -
  -     * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
  -     as default.
  -
  -2008-03-19  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
  -     (syms_of_w32fns): Initialize them.
  -     (HOURGLASS_ID): New constant.
  -     (x_window_to_frame): Don't check hourglass_window.
  -     (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
  -     (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
  -     (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
  -     (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
  -     Only change the cursor if hourglass is not active.
  -     (Fx_create_frame): Initialize frame's current_cursor.
  -     (hourglass_atimer): Remove.
  -     (hourglass_started): New function.
  -     (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
  -     (show_hourglass): Adapt to w32, changing argument to frame.
  -
  -     * w32term.h (struct w32_output): Remove hourglass_window.
  -     Add current_cursor.
  -
  -     * eval.c (call_debugger, Fsignal):
  -     * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
  -     (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
  -     (Fexecute_extended_command, cancel_hourglass_unwind):
  -     * minibuf.c (read_minibuf):
  -     * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
  -
  -2008-03-19  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * window.c (run_funs): New fun.
  -     (run_window_configuration_change_hook): Use it to run the buffer-local
  -     and the global part of the hook.
  -
  -     * xdisp.c (format_mode_line_unwind_data): Add window argument.
  -     (unwind_format_mode_line): Restore selected window.
  -     (x_consider_frame_title, Fformat_mode_line): Set selected window.
  -
  -2008-03-17  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * editfns.c (Fchar_equal): Check they are valid characters.
  -
  -     * buffer.h (Fbuffer_list): Declare (for use in callint.c).
  -
  -2008-03-17  Andreas Schwab  <schwab@suse.de>
  -
  -     * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
  -     against a charset.
  -
  -     * lisp.h (Fbuffer_list): Declare.
  -
  -2008-03-17  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
  -     handlebox_widget is != 0.
  -
  -2008-03-16  Juri Linkov  <juri@jurta.org>
  -
  -     * callint.c (Fcall_interactively): For interactive code letters
  -     'b' and 'B' put the buffer list into the list of default "future"
  -     values of the minibuffer.
  -
  -2008-03-16  Andreas Schwab  <schwab@suse.de>
  -
  -     * keyboard.c (read_key_sequence): Fix downcasing of letters with
  -     modifiers.
  -
  -     * regex.c (re_match_2_internal): Correct matching of a charset
  -     against latin-1 characters.
  -
  -2008-03-16  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
  -     (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
  -     (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
  -     (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
  -     (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
  -     CHAR_STRING_ADVANCE.
  -     (produce_chars): Fix for the case that the source and the
  -     destination are the same buffer.  Use CHAR_STRING_ADVANCE_NO_UNIFY
  -     instead of CHAR_STRING_ADVANCE.
  -     (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
  -     STRING_CHAR_ADVANCE.
  -
  -2008-03-15  Andreas Schwab  <schwab@suse.de>
  -
  -     * regex.c (re_match_2_internal): Correct matching of eight bit
  -     characters in unibyte strings.
  -
  -2008-03-15  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * buffer.c (overlays_in, Foverlays_in): Include empty overlays
  -     at end of range when it coincides with the end of the buffer.
  -
  -2008-03-14  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
  -
  -     * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
  -
  -2008-03-14  Jason Rumney  <jasonr@gnu.org>
  -
  -     * editfns.c (initial_tz): New variable.
  -     (syms_of_editfns): Initialize it.
  -     (Fset_time_zone_rule): Set it when first called.
  -     Use it when TZSTRING is nil.
  -
  -     * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
  -     (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
  -     (monitor_from_point_fn, get_monitor_info_fn): New globals.
  -     (globals_of_w32fns): Initialize them.
  -     (compute_tip_xy): Use them to position tooltips.
  -
  -2008-03-14  Glenn Morris  <rgm@gnu.org>
  -
  -     * emacs.c (main): Revert previous change.
  -     (standard_args): Revert -internal-script back to -scriptload,
  -     and remove the long-option form.
  -
  -2008-03-13  Glenn Morris  <rgm@gnu.org>
  -
  -     * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
  -     Remove option -enable-font-backend.
  -
  -2008-03-12  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
  -
  -2008-03-11  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xterm.c (x_connection_closed): For GTK: If this is the last
  -     terminal just exit without closing the display.
  -
  -2008-03-11  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (w32font_full_name): Use floor to round.
  -
  -2008-03-10  Dhruva Krishnamurthy  <dhruvakm@gmail.com>  (tiny change)
  -
  -     * sound.c (alsa_configure): Declare vol at beginning of block.
  -
  -     * fontset.c (Ffontset_info): Remove extra semicolon.
  -
  -2008-03-10  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
  -     size of resulting string.
  -
  -2008-03-10  Jason Rumney  <jasonr@gnu.org>
  -
  -     * dispnew.c (adjust_glyph_matrix): Initialize window_height.
  -
  -2008-03-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
  -     Don't pretend as if characters with display property haven't been
  -     consumed for string-replacing-string case.
  -
  -2008-03-08  Kim F. Storm  <storm@cua.dk>
  -
  -     * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
  -     (get_next_display_element, next_element_from_string)
  -     (next_element_from_ellipsis, next_element_from_buffer): Use it.
  -
  -2008-03-08  Andreas Schwab  <schwab@suse.de>
  -
  -     * process.h (struct Lisp_Process): Declare bit fields as unsigned.
  -
  -2008-03-06  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (w32_registry): Take font_type argument.  Use ANSI
  -     when charset not specified.  Only translate ANSI to unicode when
  -     font_type is truetype.
  -     (w32font_coverage_ok): New function.
  -     (add_font_entity_to_list): Use it to filter unsuitable fonts.
  -
  -2008-03-05  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * lread.c (Fread_char): Resolve modifiers.
  -     (Fread_char_exclusive): Likewise.
  -
  -     * character.c (char_resolve_modifier_mask): New function.
  -     (char_string): Use char_resolve_modifier_mask.
  -     (Fchar_resolve_modifiers): New function.
  -     (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
  -     function.
  -
  -2008-03-04  Jason Rumney  <jasonr@gnu.org>
  -
  -     * makefile.w32-in: Always include w32font.c in the build.
  -     * w32font.c: Wrap in USE_FONT_BACKEND conditional.
  -
  -2008-03-04  Andreas Schwab  <schwab@suse.de>
  -
  -     * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
  -     (versionclean): Likewise.
  -
  -2008-03-04  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * .cvsignore: Add oo.
  -
  -2008-03-03  Andreas Schwab  <schwab@suse.de>
  -
  -     * coding.c (decode_coding_object): Inhibit gap shrinking while
  -     decoding in place.
  -
  -2008-03-03  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * w32term.c: Remove unused include "gnu.h".
  -     * makefile.w32-in (w32term.o): Don't depend on gnu.h.
  -
  -     * gnu.h: Rename to ...
  -     * emacs-icon.h: ... this.
  -     * xterm.c: Use emacs-icon.h instead of gnu.h.
  -     * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
  -
  -2008-03-03  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * w32font.c: Include math.h.
  -
  -2008-03-03  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
  -     Compute options separately.
  -     (w32font_open_internal): Set glyph_idx before caching metrics.
  -
  -     * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
  -     Define if system headers don't.
  -     (struct w32font_info): Enlarge ascii_metrics.  Add glyph_idx.
  -     (w32font_encode_char): Don't declare here.
  -
  -     * w32font.c (Quniscribe, QCformat): New symbols.
  -     (syms_of_w32font): Define them.
  -     (w32font_has_char): Indicate uncertainty.
  -     (w32font_encode_char): Encode as glyph point.  Make static.
  -     (recompute_cached_metrics): New function.
  -     (w32font_open_internal): Use it.  Set font to use glyph points
  -     initially.  Set format based on type of font.
  -     (w32font_text_extents, w32font_draw): Optionally use glyph points.
  -     (w32_enumfont_pattern_entity): Accept backend arg.  Set type based
  -     on it.  Set format based on information available here.
  -     (add_font_entity_to_list): Identify backend based on opentype_only.
  -
  -2008-03-02  Andreas Schwab  <schwab@suse.de>
  -
  -     * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
  -
  -     * coding.c (decode_coding_big5, produce_chars):
  -     Fix typos in last change.
  -
  -2008-03-02  Kentaro Ohkouchi  <nanasess@fsm.ne.jp>
  -
  -     * gnu.h: New icon.
  -
  -2008-03-02  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (decode_coding_utf_8): When eol-type of CODING is
  -     `dos', don't decode '\r' if that is the last in the source.
  -     (decode_coding_utf_16, decode_coding_emacs_mule)
  -     (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
  -     (decode_coding_raw_text, decode_coding_charset): Likewise.
  -     (produce_chars): Don't decode EOL here.  Use EMACS_INT.
  -
  -2008-03-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (w32font_full_name): Report point size for scalable fonts.
  -
  -2008-03-01  Kim F. Storm  <storm@cua.dk>
  -
  -     * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
  -
  -2008-03-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (w32font_full_name): New function.
  -     (w32font_open_internal): Use it.
  -
  -2008-03-01  Kim F. Storm  <storm@cua.dk>
  -
  -     * dispnew.c (line_draw_cost): Fix invalid glyph check.
  -
  -2008-03-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * font.c (font_unparse_fcname): Increase len when style is a symbol.
  -
  -2008-03-01  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
  -     xg_frame_resized when the event is for the edit widget.
  -
  -     * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
  -
  -     * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
  -     set_char_size.
  -     (xg_frame_resized): Renamed from xg_resize_widgets.  Remove all
  -     operations on widgets here.  Just set frame size if needed.
  -     (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
  -     (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
  -     (x_wm_set_size_hint): Set size hints on the edit widget only, not
  -     the whole frame.
  -     (xg_create_tool_bar): Move attachment of the tool bar to
  -     xg_pack_tool_bar.  Do not attach the tool bar if there are no items.
  -     (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
  -
  -2008-03-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32fns.c (w32_msg_pump): Disable debug code.
  -
  -2008-03-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
  -
  -2008-02-29  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (next_overlay_string): Don't set
  -     overlay_strings_at_end_processed_p if we're currently reading from
  -     a display string.
  -
  -2008-02-29  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * xdisp.c (get_overlay_strings_1): Fix typo.
  -
  -2008-02-29  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xdisp.c (get_overlay_strings_1): Add missing argument type.
  -
  -2008-02-28  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
  -
  -     * xdisp.c (display_mode_element): Cancel the previous change.
  -     (decode_mode_spec): Likewise.
  -     (handle_auto_composed_prop): Don't make composition if it->string
  -     is a string.
  -
  -2008-02-27  Kim F. Storm  <storm@cua.dk>
  -
  -     * lisp.h (GLYPH): Change type from int to struct with separate char
  -     and face_id members.
  -     (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
  -     (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
  -     (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
  -     (GLYPH_CHAR, GLYPH_FACE): ... these.  Change users.
  -     (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove.  Rewrite users to use ...
  -     (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
  -     (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
  -     (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
  -     handle new Lisp glyph code encoding, either an integer or a cons.
  -
  -     * disptab.h (GLYPH_SIMPLE_P): Rewrite.
  -     (GLYPH_ALIAS): Delete.
  -     (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
  -     (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
  -     (GLYPH_FROM_CHAR): Replace macro by ...
  -     (SET_GLYPH_FROM_CHAR): ... this macro.  Change users.
  -
  -     * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
  -     (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
  -     (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro.  Change users.
  -     (GLYPH_INVALID_P): New macro.
  -     (spec_glyph_lookup_face): Update prototype.
  -
  -     * dispnew.c (line_draw_cost): Adapt to new glyph type.
  -     (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
  -     new glyph code encoding.
  -     (spec_glyph_lookup_face): No return value; update passed glyph instead.
  -     (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
  -
  -     * xdisp.c (get_next_display_element, next_element_from_display_vector):
  -     Adapt to new glyph type and new glyph code encoding.
  -
  -     * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
  -
  -     * indent.c (current_column, current_column_1, Fmove_to_column)
  -     (compute_motion): Adapt to new glyph code encoding.
  -
  -     * msdos.c (IT_write_glyphs): Adapt to new glyph type.
  -
  -2008-02-27  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * process.c (wait_reading_process_output): Check for window
  -     changes caused by timers.
  -     Suggested by Johan Bockgård.
  -
  -2008-02-27  Glenn Morris  <rgm@gnu.org>
  -
  -     * emacs.c (USAGE1): Add `--disable-font-backend'.
  -
  -2008-02-27  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
  -     is made to the buffer.
  -
  -2008-02-26  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * dispextern.h (face_at_buffer_position, face_for_overlay_string)
  -     (face_at_string_position):
  -     * xfaces.c (face_at_buffer_position, face_for_overlay_string)
  -     (face_at_string_position):
  -     * xdisp.c (display_string, next_overlay_change):
  -     * buffer.h (overlays_at):
  -     * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
  -     Update callers.
  -
  -2008-02-26  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * editfns.c (Fformat): Doc fix.
  -
  -2008-02-26  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
  -     (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
  -     (Ffont_otf_alternates, Fquery_font): Doc fixes.
  -
  -2008-02-25  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * buffer.c (Fbuffer_swap_text): New function.
  -     (syms_of_buffer): Defsubr it.
  -
  -2008-02-25  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * keyboard.c (command_loop_1): Revert 2006-10-09 change.
  -
  -2008-02-25  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (w32font_draw): Draw one character at a time when padding.
  -
  -2008-02-25  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * window.c (Fdelete_window, Fadjust_window_trailing_edge):
  -     Handle a nil arg.  Use run_window_configuration_change_hook.
  -     (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
  -     (Fenlarge_window, Fshrink_window, Fset_window_configuration):
  -     Use run_window_configuration_change_hook.
  -
  -2008-02-25  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
  -     1-pixel width.
  -
  -2008-02-25  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
  -     (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
  -     if the glyph in the font is zero pixel with.
  -
  -     * dispextern.h (struct glyph_string): New member padding_p.
  -
  -     * w32font.c (w32font_draw): Pay attention to s->padding_p.
  -
  -     * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
  -
  -     * xfont.c (xfont_draw): Pay attention to s->padding_p.
  -
  -     * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
  -
  -     * font.c: If the font driver doesn't have `shape' function, return Qnil.
  -
  -2008-02-25  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
  -
  -2008-02-24  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     Allow fine-grained image-cache flushing.
  -     * dispextern.h (struct image): Add `dependencies' field.
  -     (clear_image_caches): Change arg to Lisp_Object.
  -     * image.c (make_image): Initialize `dependencies' field.
  -     (clear_image_cache): Change arg to allow fine-grained flushing.
  -     Perform the flush even if image-cache-eviction-delay is nil.
  -     (clear_image_caches): Change arg to Lisp_Object.
  -     (Fclear_image_cache): Expand meaning of the argument.
  -     (mark_image): Mark `dependencies' field.
  -     * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
  -     (lface_hash): Use XHASH rather than XFASTINT.
  -     (face_at_buffer_position): Fix int -> EMACS_INT position.
  -     * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
  -     (select_frame_for_redisplay): Remove code duplication.
  -     (redisplay_internal): Adapt arg to call to clear_image_caches.
  -
  -2008-02-24  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * s/vms4-0.h:
  -     * s/vms4-2.h:
  -     * s/vms4-4.h:
  -     * s/vms5-5.h: Remove, unused.
  -
  -     * s/irix5-2.h:
  -     * s/irix6-0.h:
  -     * s/riscos5.h:
  -     * s/mach-bsd4-3.h:
  -     * m/mips4.h: Remove files for obsolete systems.
  -
  -     * Makefile.in:
  -     * filelock.c:
  -     * unexmips.c:
  -     * m/hp9000s300.h:
  -     * m/iris4d.h:
  -     * s/aix3-1.h:
  -     * s/hpux.h:
  -     * s/msdos.h:
  -     * s/usg5-0.h:
  -     * s/usg5-2-2.h:
  -     * s/usg5-2.h:
  -     * s/usg5-3.h: Remove references to obsolete variables.
  -
  -     * s/irix5-0.h: Remove, move all the contents ...
  -     * s/irix6-5.h: ... here.  Simplify.
  -     * config.in: Regenerate.
  -
  -2008-02-24  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32term.c (x_draw_glyph_string_background): Clear the background
  -     manually when cleartype is in use.
  -     (x_draw_glyph_string_foreground): Draw text transparently when
  -     cleartype is in use.
  -
  -     * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
  -     a font into it unless we have to.
  -
  -2008-02-19  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * intervals.h (INT_LISPLIKE): Remove.  It may misfire.
  -     (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
  -
  -2008-02-18  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32fns.c (Fw32_shell_execute): Encode parameters.
  -
  -2008-02-09  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
  -
  -2008-02-05  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * unexhp9k800.c (read_header): Replace `legal' with `valid'.
  -
  -2008-02-24  Ulrich Neumerkel  <ulrich@complang.tuwien.ac.at>  (tiny change)
  -
  -     * xterm.c (x_set_offset): Don't change the gravity if
  -     CHANGE_GRAVITY is -1.
  -
  -2008-02-23  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * fileio.c (auto_save_error_occurred): New var.
  -     (auto_save_error): Set it.
  -     (Fdo_auto_save): Don't overwrite the error message if an auto-save
  -     error occurred.
  -
  -2008-02-23  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * w32.c (globals_of_w32): Add initializations for
  -     g_b_init_get_sid_sub_authority and
  -     g_b_init_get_sid_sub_authority_count.
  -
  -2008-02-22  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
  -     (font_parse_xlfd): Use them for sanity check.
  -     (Finternal_set_font_style_table): Make sure the table is bijective.
  -
  -     Consolidate the image_cache to the terminal struct.
  -     * termhooks.h (P_): Remove redundant def.
  -     (struct terminal): New field `image_cache'.
  -     * frame.h (FRAME_IMAGE_CACHE): New macro.  Use it everywhere in place
  -     of FRAME_X_IMAGE_CACHE.
  -     * xterm.h (struct x_display_info): Remove image_cache field.
  -     (FRAME_X_IMAGE_CACHE): Remove.  Use FRAME_IMAGE_CACHE instead.
  -     * w32term.h (struct w32_display_info): Remove image_cache field.
  -     (FRAME_X_IMAGE_CACHE): Remove.  Use FRAME_IMAGE_CACHE instead.
  -     * macterm.h (struct mac_display_info): Remove image_cache field.
  -     (FRAME_X_IMAGE_CACHE): Remove.  Use FRAME_IMAGE_CACHE instead.
  -     * xterm.c (x_term_init):
  -     * w32term.c (w32_term_init):
  -     * macterm.c (mac_term_init): Set the image_cache in the terminal.
  -     * dispextern.h (clear_image_cache, forall_images_in_image_cache):
  -     Remove declarations.
  -     (clear_image_caches, mark_image_cache): New declarations.
  -     * xfaces.c (clear_face_cache):
  -     * xdisp.c (redisplay_internal): Use clear_image_caches.
  -     * image.c (clear_image_cache): Don't check that a frame is on
  -     a window-system before checking if it shares the same cache.
  -     (clear_image_caches): New function.
  -     (Fclear_image_cache): Use it.
  -     (mark_image): Move from allo.c.
  -     (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
  -     * alloc.c (mark_image, mark_image_cache): Move to image.c.
  -     (mark_object): Don't call mark_image_cache for frames.
  -     (mark_terminals): Call mark_image_cache.
  -
  -     * lisp.h (Fdelete_terminal): Declare.
  -
  -     * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
  -     (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
  -     wrong_type_argument.
  -
  -2008-02-22  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * Makefile.in (lisp): Remove devanagari.el, kannada.el,
  -     malayalam.el, and tamil.el.  Add sinhala.el.
  -
  -2008-02-21  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * xterm.c (x_connection_closed): Consolidate identical tests.
  -     (x_delete_terminal): Don't crash if called via x_connection_closed.
  -
  -2008-02-21  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * xdisp.c (decode_mode_spec): New arg string.
  -     (display_mode_element): Adjust for the above change.
  -
  -2008-02-19  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * callint.c (Fcall_interactively): Use AREF.
  -
  -2008-02-18  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
  -
  -2008-02-18  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xfns.c (Fx_show_tip): Set string to " " if empty.
  -
  -2008-02-17  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
  -     with Qt.
  -
  -2008-02-17  Kenichi Handa  <handa@m17n.org>
  -
  -     * ftfont.c (ftfont_shape): Return Lispy number.
  -
  -     * xfaces.c (prepare_face_for_display): Use display_info->font->fid
  -     for GCs.
  -     (Finternal_set_font_selection_order): Call font_update_sort_order
  -     only when enable_font_backend is set.
  -     (realize_x_face): Set face->font_info to that of default face only
  -     when enable_font_backend is set.
  -
  -     * xdisp.c (handle_composition_prop): Set it->c to the fist
  -     character of the composed region.
  -     (fill_composite_glyph_string): Set base_face->font_info to
  -     s->font_info.  Get a face for ascii from base_face->ascii_face.
  -     (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
  -     with a face already decided.
  -     (x_produce_glyphs): Be sure to set it->ascent and it->descent to
  -     non-negative.
  -     (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
  -     call font_prepare_composition unconditionally.
  -
  -     * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
  -
  -     * xterm.h (struct x_display_info): New member font.
  -
  -     * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
  -     (x_set_mouse_face_gc, x_new_font): Likewise.
  -     (x_term_init): Setup display_info->font.
  -     (x_delete_terminal): Free display_info->font.
  -
  -     * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
  -
  -     * ftxfont.c (ftxfont_default_fid): Delete it.
  -     (ftxfont_open): Set xfont->fid to 0.
  -     (ftxfont_end_for_frame): Clear data specific to the frame and the
  -     font-driver.
  -
  -     * xftfont.c (xftfont_default_fid): Delete it.
  -     (xftfont_open): Set xfont->fid to 0.
  -
  -     * fontset.c (FONTSET_OBJLIST): New macro.
  -     (fontset_find_font): Update font-object list of the fontset.
  -     (free_realized_fontset): New function.
  -     (free_face_fontset): Call free_realized_fontset.
  -     (Ffont_info): Call font_close_object only when enable_font_backend
  -     is set.
  -
  -     * font.c [HAVE_X_WINDOWS]: Include xterm.h.
  -     [HAVE_NTGUI]: Include w32term.h.
  -     [MAC_OS]: Include macterm.ch.
  -     (font_otf_ValueRecord): Use make_number.
  -     (font_finish_cache): Fix handling of reference count.
  -     (font_clear_cache): Update num_fonts.
  -     (font_open_entity): Update smallest_char_width and
  -     smallest_font_height of the frame.
  -     (font_close_object): Update num_fonts.
  -     (Fclear_font_cache): Fix finding the target cache data.
  -
  -2008-02-16  Glenn Morris  <rgm@gnu.org>
  -
  -     * fontset.c (Finternal_char_font): Fix compilation warning.
  -
  -2008-02-16  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
  -     instead of char arrays.  Enlarge the size of array passed to
  -     get_token_information.
  -
  -     * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
  -     warnings.
  -
  -2008-02-15  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * .gdbinit: Don't set `args', it breaks gdb --args.
  -
  -2008-02-14  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * fileio.c (Finsert_file_contents): Adjust offsets when replacing
  -     within a narrowed buffer.
  -
  -2008-02-14  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * coding.c (decode_coding_object, encode_coding_object):
  -     Preserve Vdeactivate_mark.  Delete unnecessary call of Fcurrent_buffer.
  -
  -2008-02-12  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * coding.c (coding_set_destination): Use BEG_BYTE rather than
  -     hardcoding 1.
  -     (detect_coding_system):
  -     * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
  -     (string_char_to_byte, string_byte_to_char, insert_from_gap):
  -     * insdel.c (insert_from_gap):
  -     * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
  -     (string_char_to_byte, string_byte_to_char, string_make_multibyte)
  -     (string_to_multibyte):
  -     * character.c (chars_in_text, multibyte_chars_in_text):
  -     * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
  -
  -     * character.h (FETCH_STRING_CHAR_ADVANCE)
  -     (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
  -     (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
  -     (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
  -
  -     * casefiddle.c (casify_region): Only call after-change and composition
  -     functions on the part of the region that was changed.
  -
  -     * keyboard.c (read_avail_input):
  -     * frame.c (Fdelete_frame): Call Fdelete_terminal.
  -
  -2008-02-11  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
  -     (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
  -
  -2008-02-11  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * w32menu.c (push_submenu_start, push_submenu_end)
  -     (push_left_right_boundary, push_menu_pane, push_menu_item):
  -     * keyboard.c (read_key_sequence): Don't pass args with side effects
  -     to AREF, it fails when compiling with -DENABLE_CHECKING.
  -
  -2008-02-11  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * Makefile.in (${lispsource}international/charprop.el):
  -     Delete this target.
  -
  -     * search.c (boyer_moore): Fix incorrect synching of the trunk and
  -     emacs-unicode-2.
  -
  -2008-02-11  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * terminal.c (Fdelete_terminal): Clean up the `force' path.
  -
  -2008-02-10  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * frame.c (Qnoelisp): New symbol.
  -     (syms_of_frame): Initialize it.
  -     (Fdelete_frame): Use it to distinguish a mere `force' passed from some
  -     harmless Elisp code, from a strong `force' from x_connection_closed.
  -     * frame.h (Qnoelisp): Declare.
  -     * xterm.c (x_connection_closed): Pass `noelisp'.
  -
  -     * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
  -     (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
  -     (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
  -     rather than `int' for the type of `type'.
  -
  -2008-02-10  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
  -
  -     * Makefile.in (GNUC): Remove support for gcc-1.x.
  -
  -2008-02-10  Richard Stallman  <rms@gnu.org>
  -
  -     * lisp.h (ASET): Use AREF, not ASLOT.
  -
  -2008-02-10  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * lisp.h (ASET): Check bounds.
  -
  -2008-02-10  Glenn Morris  <rgm@gnu.org>
  -
  -     * buffer.c (mode-name): Doc fix.
  -
  -2008-02-09  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * Makefile.in:
  -     * emacs.c:
  -     * gmalloc.c:
  -     * keyboard.c:
  -     * lisp.h:
  -     * m/ibm370aix.h:
  -     * process.c:
  -     * regex.c:
  -     * s/hpux.h:
  -     * sysdep.c:
  -     * sysselect.h:
  -     * systty.h:
  -     * unexec.c:
  -     * w32term.c:
  -     * xsmfns.c:
  -     * xterm.c: Remove code that deals with obsolete variables.
  -
  -     * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
  -
  -     * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
  -     nothing else needs it anymore.
  -
  -2008-02-09  Eli Zaretskii  <eliz@gnu.org>
  -
  -     * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
  -     instead of unibyte_char_to_multibyte.
  -
  -2008-02-09  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * s/gnu-linux.h: Remove commented out code.
  -
  -     * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
  -
  -     * Makefile.in: Update what RMS says about using autoconf.
  -     (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
  -     (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
  -     (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
  -     (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
  -
  -2008-02-08  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * keymap.c (Fkey_description): Move side effect outside of macro call.
  -
  -     * xfaces.c (Finternal_make_lisp_face):
  -     * keyboard.c (add_command_key, parse_menu_item): Use ASET.
  -
  -     * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
  -     (syms_of_fontset): Use ASET.
  -
  -     * fns.c (concat): Move side effect outside of macro call.
  -     (hash_clear): Use ASET.
  -
  -2008-02-08  Richard Stallman  <rms@gnu.org>
  -
  -     * frame.c (Fdelete_frame): If FORCE, don't call hooks.
  -     If FORCE, and frame has a surrogate minibuffer for another frame,
  -     delete the other frame first.
  -
  -2008-02-07  Timo Savola  <timo.savola@iki.fi>
  -
  -     * xterm.c (x_detect_focus_change): Handle embed client message.
  -     (handle_one_xevent): Ditto.
  -     (handle_one_xevent): If embedded and we get a button press/release,
  -     request focus.
  -     (xembed_set_info, xembed_send_message): New functions.
  -     (x_make_frame_visible): Call xembed_set_info if embedded.
  -     (x_make_frame_invisible): Call xembed_set_info if embedded.
  -     (x_term_init): Initialize Xatom_XEMBED.
  -     (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
  -     (x_iconify_frame): Ditto.
  -
  -     * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
  -     (enum xembed_info, enum xembed_message, enum xembed_focus)
  -     (enum xembed_modifier, enum xembed_accelerator): New.
  -     (xembed_set_info, xembed_send_message): Declare.
  -     (FRAME_X_EMBEDDED_P): New.
  -
  -     * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
  -     gtk_plug_new.
  -
  -     * xfns.c (Fx_create_frame): Do not override the explicitly set parent
  -     window ID of a frame.
  -     (x_window): Reparent frame if embedded.
  -     (Fx_create_frame): Don't set border width if embedded.
  -
  -     * emacs.c (USAGE3): Add --parent-id.
  -     (standard_args): Ditto.
  -
  -2008-02-07  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
  -
  -2008-02-07  Jim Meyering  <meyering@redhat.com>
  -
  -     Use "do...while (0)", not "if (1)...else" in macro definitions.
  -     The latter provokes a warning from gcc about the empty else, when
  -     followed by ";".  Also, without that trailing semicolon, it would
  -     silently swallow up any following statement.
  -     * syntax.h (SETUP_SYNTAX_TABLE)
  -     (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
  -     * buffer.h (DECODE_POSITION): Likewise.
  -     * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
  -     (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
  -     (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
  -     (FETCH_CHAR_ADVANCE): Likewise.
  -     (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
  -
  -2008-02-07  Jim Meyering  <meyering@redhat.com>
  -
  -     * lread.c [lint]: Don't include <sys/inode.h>.
  -
  -2008-02-07  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * xselect.c (x_handle_dnd_message):
  -     * xmenu.c (digest_single_submenu, xmenu_show):
  -     * xdisp.c (with_echo_area_buffer_unwind_data)
  -     (format_mode_line_unwind_data, unwind_format_mode_line)
  -     (display_menu_bar):
  -     * eval.c (Ffetch_bytecode):
  -     * doc.c (store_function_docstring):
  -     * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
  -     (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
  -     * buffer.c (add_overlay_mod_hooklist): Use ASET.
  -
  -2008-02-07  Kenichi Handa  <handa@m17n.org>
  -
  -     * ftxfont.c (ftxfont_open): Don't set
  -     dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
  -
  -     * ftfont.c (ftfont_open): Fix previous change.
  -
  -2008-02-06  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (w32font_text_extents): Fill in lbearing metric.
  -     Use cached metrics for ASCII characters.
  -     (w32font_open_internal): Don't set font's owning_frame.
  -     Cache metrics for ASCII characters.
  -
  -     * w32font.h (struct w32font_info): Add ascii_metrics.
  -     Remove owning_frame.
  -
  -2008-02-06  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
  -     to negative value.
  -
  -     * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
  -
  -     * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
  -
  -     * charset.c (syms_of_charset): Set QCtest and Qeq.
  -
  -2008-02-06  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * process.c (Fstart_process):
  -     * callproc.c (Fcall_process): Handle the case where
  -     Funhandled_file_name_directory returns nil.
  -
  -     * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
  -     (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
  -     * font.c (check_gstring): Use them and AREF to access the vector before
  -     we know it's really a gstring.
  -     (Ffont_shape_text): Fix typo.
  -     (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
  -
  -     * composite.h (Fcompose_region_internal, Fcompose_string_internal):
  -     Declare.
  -
  -     * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
  -
  -2008-02-05  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
  -     Set smallest_font_height and smallest_char_width in display info.
  -
  -2008-02-05  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
  -
  -2008-02-05  Miles Bader  <miles@gnu.org>
  -
  -     * xfaces.c (get_lface_attributes, merge_named_face)
  -     (lookup_named_face, lookup_derived_face, realize_named_face):
  -     Revert 2008-02-01 change by cyd@stupidchicken.com.
  -
  -2008-02-04  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * fontset.c (Ffontset_info): Handle the case of inhibitting the
  -     fallback fonts.
  -     (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
  -
  -2008-02-04  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (w32font_open_internal): Use font_unparse_fcname to
  -     set full_name.
  -     (w32font_open_internal): Use xmalloc, xrealloc, xfree.
  -
  -2008-02-03  Jason Rumney  <jasonr@gnu.org>
  -
  -     * makefile.w32-in (OBJ1): Include font.o here.
  -     (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
  -
  -2008-02-02  Jason Rumney  <jasonr@gnu.org>
  -
  -     * makefile.w32-in (temacs): Bump EMHEAP to 21.
  -
  -2008-02-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * s/cygwin.h: Define VIRT_ADDR_VARIES.
  -
  -     * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
  -
  -2008-02-01  Andreas Schwab  <schwab@suse.de>
  -
  -     * Makefile.in (shortlisp, lisp): Update for rename of
  -     ../lisp/language/myanmar.el.
  -
  -2008-02-01  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * xfaces.c (get_lface_attributes): Delete function.
  -     (merge_named_face, lookup_named_face, lookup_derived_face)
  -     (realize_named_face): Call lface_from_face_name directly, and use
  -     the fact that merge_face_vectors does not alter its FROM argument.
  -
  -2008-02-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
  -     input in the default locale.  Handle non-Unicode multibyte input.
  -
  -2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * fontset.c (reorder_font_vector): Exclude nil elements from the
  -     font group.  Don't try multiple fonts.
  -     (fontset_font): Adjust for the above change.
  -     (Finternal_char_font): Return nil if the found font doesn't
  -     contain the character ch.
  -
  -     * Makefile.in (lisp, shortlisp): Add cham.el.
  -
  -2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * font.h (FONTP): Make it return 1 also for a font-object.
  -
  -     * .gdbinit (xfontset): New function.
  -
  -     * font.c (font_find_for_lface): Check if the character C is
  -     supported or not only for the first font.
  -
  -     * fontset.c (reorder_font_vector): Fix typo.
  -     (fontset_find_font): Don't add a font-spec specifying a script.
  -     Use 0 (not Qt) for the indication of empty font-group.  Change the
  -     format of RFONT-DEF.  Return Qt if no font in the font-group
  -     support the character.
  -     (fontset_font): Adjust for the above change.  If no font was
  -     found the character, remember that.
  -     (face_for_char): Adjust for the change of RFONT-DEF.
  -     (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
  -     no font for the target.
  -     (Finternal_char_font): Adjust for the change of RFONT-DEF.
  -
  -2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * font.c (font_load_for_face): Handle the case that the font in
  -     face->lface is a string.
  -
  -2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
  -
  -2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
  -     Fix previous change.  If the frame is not on a window system,
  -     signal an error.
  -
  -2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * coding.c (decode_coding_object, encode_coding_object): Adjust
  -     marker positions after conversion.
  -
  -     * lisp.h (struct Lisp_Marker): New member need_adjustment.
  -
  -2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * font.c (font_find_for_lface): Fix the handling of the return
  -     value of font_has_char.
  -     (Ffont_shape_text): Fix previous change.
  -
  -     * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
  -     (fontset_ref_and_range): Delete it.
  -     (fontset_find_font): Call char_table_ref_and_range instead of
  -     FONTSET_REF_AND_RANGE.
  -     (make_fontset): Don't setup font groups of Latin here.
  -     (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
  -     (new_fontset_from_font): Make the specified font the default for
  -     all Latin characters.
  -
  -2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
  -     is on a window system before accessing the fontset of the frame.
  -
  -2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
  -
  -     * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
  -     when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
  -
  -     * font.c (Ffont_shape_text): If the font driver doesn't have a
  -     shaper function, make zero-width glyphs to have at least one-pixel
  -     width.  Fix setting of `to' field of glyphs.
  -
  -2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
  -     glyphs.
  -
  -     * font.h (struct font_driver): Improve docstring of member `shape'.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * composite.c (syms_of_composite): Fix docstring of
  -     auto-composition-function.
  -
  -     * font.h (LGLYPH_SIZE): New macro.
  -
  -     * font.c (Ffont_fill_gstring): Stop filling when a character not
  -     supported by the font is found.
  -     (Ffont_shape_text): When a shape callback function returns nil,
  -     try at most two more times with larger gstring.
  -     (Ffont_at): Fix getting of w.  Call font_at with correct 5th argument.
  -
  -     * xdisp.c (handle_auto_composed_prop): Change the argument to
  -     auto-composition-function.
  -
  -     * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
  -     (ftfont_shape_by_flt): If an element of lgstring is nil, make a
  -     Lispy glyph and store it in the lgstring.
  -
  -     * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
  -
  -     * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
  -
  -2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * font.c (Ffont_shape_text): Avoid unnecessary composition.
  -
  -     * fontset.c (Vfont_encoding_charset_alist): New variable.
  -     (syms_of_fontset): DEFVAR it.
  -     (reorder_font_vector, fontset_find_font): Optimize for the case of
  -     no need of reordering.
  -     (face_for_char): Map the charset property by
  -     Vfont_encoding_charset_alist.
  -
  -2008-02-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (logfonts_match): Don't check adstyle here.
  -     (font_matches_spec): Check here against physical font instead.
  -     (add_font_entity_to_list): Avoid some substitutions.
  -
  -     * font.c (font_parse_fcname): Default weight and slant to normal.
  -     (font_score): Prefer normal fonts if weight or slant unspecified.
  -     (font_score) [WINDOWSNT]: Scale weight difference down to closer
  -     match freetype scores.
  -
  -2008-02-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (w32font_text_extents): Don't use the frame stored in the
  -     font, as it may have been deleted.
  -     (w32_enumfont_pattern_entity): Map generic family to adstyle using
  -     most common hyphenless variation.
  -     (logfonts_match): Check generic family.
  -     (font_matches_spec): Don't check generic family here.
  -     (fill_in_logfont): Set generic family based on adstyle.
  -
  -     * w32font.h (w32font_get_cache): Update declaration.
  -
  -2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * ftfont.c (ftfont_get_cache): Adjust the argument type.
  -
  -     * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
  -     If none of the new drivers are available, call font_update_drivers
  -     with the old drivers.
  -
  -     * w32font.c (w32font_get_cache): Adjust the argument type.
  -
  -     * xfont.c (xfont_get_cache): Adjust the argument type.
  -
  -     * font.h (struct font_driver): Change argument type of get_cache.
  -
  -     * xftfont.c (xftfont_start_for_frame): Delete prototype.
  -
  -     * font.c (Ffont_get): Fix arguments to Fassoc.
  -     (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
  -     (font_clear_cache): New function.
  -     (font_list_entities, font_matching_entity): Use font_get_cache.
  -     (font_update_drivers): Call font_clear_cache when finishing a driver.
  -
  -     * fontset.c (fontset_find_font): Fix previous change.
  -
  -2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
  -     dpyinfo->font_table.
  -     (x_delete_display) [USE_FONT_BACKEND]: Likewise.
  -     (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
  -
  -     * font.c (font_at): Handle the case that the arg C is negative.
  -     Handle the unibyte case.
  -     (Ffont_at): Call font_at with the arg C -1.
  -
  -     * xdisp.c (handle_auto_composed_prop): Don't get a character at
  -     the position here, and call font_at with the arg C -1.
  -     Don't check the range of the existing composition at the point.
  -
  -2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * fontset.c (fontset_add): New args charset_id and family.
  -     Change caller.
  -     (load_font_get_repertory, fontset_find_font): Assume that
  -     font_spec is always a font-spec object.
  -     (Fset_fontset_font): Always store a font-spec object in a fontset.
  -
  -     * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
  -     instead of get_property_and_range.
  -
  -2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * xftfont.c (struct xftfont_info): Delete the member ft_face.
  -     (xftfont_open): Don't keep locking face.
  -     (xftfont_close): Don't unlock face.
  -     (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
  -
  -     * fontset.c (fontset_find_font): Don't prefer a font of
  -     supplementary charset.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
  -     script, langsys_tag to langsys, new member script.
  -     (OTF_TAG_STR): Terminate by '\0'.
  -     (ftfont_get_open_type_spec): If :otf prop is spec, limit the
  -     listing to the script specified in that property.  Fix arg to
  -     OTF_check_features.
  -
  -2008-02-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.h: New file.
  -
  -     * w32font.c: Include it.
  -     (struct w32font_info): Add owning_frame field.  Move to w32font.h.
  -     (w32font_open): Set owning_frame.
  -     (w32font_text_extents): Use owning_frame.
  -     (struct font_callback_data): Add opentype_only field.
  -     (add_font_entity_to_list): Use it to filter fonts.
  -     Don't check against full name.
  -     (w32font_list_internal): New function.
  -     (w32font_list): Use it.
  -     (w32font_match_internal): New function.
  -     (w32font_match): Use it.
  -     (w32font_open_internal): New function.
  -     (w32font_open): Use it.
  -     (w32font_get_cache, w32font_close, w32font_has_char)
  -     (w32font_encode_char, w32font_text_extents, w32font_draw):
  -     Make non-static.
  -
  -     * makefile.w32-in (w32font.o): Depend on w32font.h.
  -
  -2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * charset.c (Fdefine_charset_internal): Record a supplementary
  -     charset at the tail of Vcharset_order_list.
  -
  -     * font.c (Ffont_shape_text): Fix the return value.
  -
  -     * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
  -
  -     * xdisp.c (handle_auto_composed_prop): Fix previous change.
  -
  -2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * ftfont.c (struct OpenTypeSpec): New struct.
  -     (OTF_SYM_TAG, OTF_TAG_STR): New macros.
  -     (ftfont_get_open_type_spec): New function.
  -     (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
  -
  -     * lread.c (read1): Redo the previous change with checking Vpurify_flag.
  -
  -2008-02-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (add_font_entity_to_list): Compare only the beginning
  -     of full name.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xdisp.c (handle_auto_composed_prop): Simplify the code.
  -     Never return HANDLED_RECOMPUTE_PROPS.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_gstring_produce): Delete it.
  -
  -     * composite.h (COMPOSITION_METHOD):
  -     Handle COMPOSITION_WITH_GLYPH_STRING.
  -
  -2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * xfont.c (Qx): Delete.
  -     (syms_of_xfont): Don't initialize Qx.
  -
  -     * composite.h (enum composition_method):
  -     Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
  -
  -2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
  -     (choose_face_font): Accept new form of font-spec.
  -
  -     * frame.h (font_driver_list): Declare it unconditionally.
  -     (struct frame): Define members font_driver_list and font_data_list
  -     unconditionally.
  -
  -     * fontset.c: Include "font.h" unconditionally.
  -     (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
  -     (Fset_fontset_font): Accept a font-spec object.
  -
  -     * font.c (font_unparse_xlfd): If pixel_size is zero, make the
  -     PIXEL_SIZE part a wild card.
  -
  -     * dispextern.h (struct glyph_string): Define members clip and
  -     num_clips unconditionally.
  -     (struct face): Define members font_info and extra unconditionally.
  -
  -     * ftfont.c (ftfont_open): Set members maybe_otf and otf of
  -     ftfont_info only when HAVE_LIBOTF is defined.
  -
  -2008-02-01  Andreas Schwab  <schwab@suse.de>
  -
  -     * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
  -     and end.
  -
  -2008-02-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (w32font_driver): Add new fields.
  -
  -2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
  -     (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
  -     (LIBES): Add @M17N_FLT_CFLAGS@.
  -
  -     * composite.c (compose_text): Don't treat the new style
  -     composition specially.
  -
  -     * emacs.c (main): Call syms_of_font unconditionally.
  -
  -     * font.h (FONT_ENTITY_NOT_LOADABLE)
  -     (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
  -     (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
  -     (struct font_driver): New member shape.
  -     (font_registry_charsets): Extern it.
  -     (font_find_for_lface, font_prepare_composition): Adjust prototype.
  -     (font_otf_capability, font_drive_otf): Delete their externs.
  -
  -     * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
  -     (font_charset_alist, font_registry_charsets): Move from xfont.c
  -     and rename.
  -     (font_prop_validate_otf): New function.
  -     (font_property_table): Register it for QCotf.
  -     (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
  -     (font_drive_otf): Delete.
  -     (font_prepare_composition): New arg F.  Adjust for the change of
  -     lispy gstring.
  -     (font_find_for_lface): New arg C.
  -     (font_load_for_face): Adjust for the change of font_find_for_lface.
  -     (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
  -     lispy gstring.
  -     (Ffont_shape_text): New function.
  -     (Fopen_font): If the font size is not given, use 12-pixel.
  -     (Ffont_at): New arg STRING.
  -     (syms_of_font): Initialize font_charset_alist.
  -     Declare Ffont_shape_text as a Lisp function.  Call syms_of_XXfont
  -     conditionally.
  -
  -     * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
  -     fonts of the same font-spec.  Change the format of RFONT-DEF.
  -     (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
  -     Adjust for the change of RFONT-DEF.
  -     (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
  -
  -     * ftfont.h: New file.
  -
  -     * ftfont.c: Don't include Freetype headers.  Include "ftfont.h".
  -     (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
  -     (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
  -     (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
  -     font_otf_capability and font_drive_otf, set ftfont_shape.
  -     (ftfont_list): Adjust for the change of :otf property value.
  -     (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
  -     (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
  -     (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
  -     (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
  -     (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
  -     (otf_gstring, gstring, m17n_flt_initialized): New variables.
  -
  -     * w32term.c (x_draw_composite_glyph_string_foreground):
  -     Adjust for the change of lispy gstring.
  -
  -     * xdisp.c (handle_composition_prop): Adjust for the change of
  -     lispy gstring.  Call a function for auto-composition with the
  -     third arg it->window.
  -     (fill_composite_glyph_string): Adjust for the change of lispy string.
  -     (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
  -
  -     * xfaces.c (set_font_frame_param): Adjust for the change of
  -     font_find_for_lface.
  -
  -     * xfont.c (x_font_charset_alist): Move to font.c and rename.
  -     (xfont_registry_charsets): Likewise.  Change caller.
  -     (syms_of_xfont): Don't handle x_font_charset_alist.
  -
  -     * xftfont.c: Include "ftfont.h".
  -     (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
  -     (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
  -     (xftfont_close) [HAVE_LIBOTF]: Close otf.
  -     (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
  -     (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
  -     Set xftfont_driver.shape to xftfont_shape.
  -
  -     * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
  -     the change of lispy gstring.
  -
  -2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
  -
  -2008-02-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (w32font_draw): Fill background manually.
  -
  -2008-02-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * font.c (Qfontp): Remove unused symbol.
  -     (QCantialias): New symbol.
  -     (syms_of_font): Define it.
  -     (font_property_table): Set a validator for QCantialias.
  -
  -     * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
  -     Define if not already.
  -     (QCfamily): Share with xfaces.c.
  -     (Qstandard, Qsubpixel, Qnatural): New symbols.
  -     (syms_of_w32font): Define them.  Don't define QCfamily here.
  -     (w32_antialias_type, lispy_antialias_type): New functions.
  -     (w32_enumfont_pattern_entity): New arg requested_font.
  -     Set antialias parameter if non-default was requested.
  -     (fill_in_logfont): Fill in lfQuality if :antialias specified.
  -
  -2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * lread.c (read1): Undo the previous change.
  -
  -2008-02-01  CHENG Gao  <chenggao@gmail.com>  (tiny change)
  -
  -     * frame.c (Fdelete_frame): Call font_update_drivers only when
  -     USE_FONT_BACKEND is defined.
  -
  -2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * font.h (struct font_bitmap): New member bits_per_pixel.
  -     (struct font_driver): New members start_for_frame and end_for_frame.
  -     (struct font_data_list): New struct.
  -     (font_put_frame_data, font_get_frame_data): Extern them.
  -
  -     * frame.h (struct frame): New member font_data_list.
  -
  -     * font.c (font_update_drivers): Call driver->start_for_frame and
  -     driver->end_for_frame at proper timings.
  -     (font_put_frame_data, font_get_frame_data): New functions.
  -     (Ffont_spec): Add usage in the docstring.
  -
  -     * frame.c (make_frame): Initialize f->font_data_list to NULL.
  -     (Fdelete_frame): Call font_update_drivers.
  -
  -     * xftfont.c (struct xftface_info): Delete the member xft_draw.
  -     (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
  -     (xftfont_get_xft_draw): New function.
  -     (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
  -     (xftfont_end_for_frame): New function.
  -     (syms_of_xftfont): Set xftfont_driver.end_for_frame.
  -
  -     * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
  -     Change argument.  Cache GCs in the per-frame data.
  -     (struct ftxfont_frame_data): New struct.
  -     (ftxfont_draw_bitmap): New arg gc_fore and flush.
  -     (ftxfont_prepare_face, ftxfont_done_face): Delete them.
  -     (ftxfont_draw): Get GCs by ftxfont_get_gcs.  Reflect s->clip in GCs.
  -     (ftxfont_end_for_frame): New function.
  -     (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
  -
  -     * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xselect.c (Vselection_coding_system)
  -     (Vnext_selection_coding_system): Delete them.
  -     (syms_of_xselect): Don't declare selection-coding-system and
  -     next-selection-coding-system.  They are declared in select.el.
  -
  -2008-02-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
  -
  -     * w32fns.c: Include imm.h.
  -     (get_composition_string_fn, get_ime_context_fn): New optional
  -     system functions.
  -     (globals_of_w32fns): Load them from imm32.dll.
  -     (ignore_ime_char): New flag.
  -     (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
  -     WM_IME_ENDCOMPOSITION messages.
  -
  -     * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
  -     MULTIBYTE_CHAR_KEYSTROKE_EVENT.
  -
  -2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
  -     (READCHAR_REPORT_MULTIBYTE): New macro.
  -     (readchar): New 2nd arg MULTIBYTE.
  -     (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
  -     Make symbol's name multibyte according to the multibyteness of the
  -     source.
  -
  -2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * xfaces.c (face_for_overlay_string): Call lookup_face with
  -     correct arguments (fix of synching with the trunk).
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_prop_validate_symbol, font_prop_validate_style)
  -     (font_prop_validate_non_neg, font_prop_validate_spacing):
  -     Delete argument prop_index.
  -     (font_property_table): Change arguments to validater.  Change Callers.
  -     (font_lispy_object): Delete.
  -     (font_at): Use font_find_object instead fo font_lispy_object.
  -
  -2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
  -     and file names.
  -
  -2008-02-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (add_font_name_to_list): Avoid vertical fonts.
  -     (font_matches_spec): Remove debug output.
  -     (add_font_entity_to_list): Avoid using substituted fonts.
  -
  -2008-02-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * doc.c (Fsnarf_documentation):
  -     * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
  -
  -2008-02-01  Miles Bader  <miles@gnu.org>
  -
  -     * dispextern.h (struct glyph_row): Only define "clip" field if
  -     HAVE_WINDOW_SYSTEM is defined.
  -
  -2008-02-01  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     Fix up multi-tty merge.
  -
  -     * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
  -     and indentation.
  -
  -     * xfaces.c (free_realized_face, clear_face_gcs):
  -     Include font_done_for_face in the input_blocked section, just in case.
  -
  -     * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
  -     (get_char_face_and_encoding): Undo last change and remove the *other*
  -     duplicate definition (i.e. keep the one that's better scoped and that
  -     includes code for the font-backend).
  -
  -     * terminal.c (create_terminal): Default keyboard_coding to
  -     `no-conversion' and terminal_coding to `undecided'.
  -
  -     * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
  -
  -     * fontset.c (free_realized_fontsets): Check that the table entry does
  -     contain a fontset before trying to compare it to `base'.
  -
  -     * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
  -     syms_of_charset, and syms_of_coding earlier because init_window_once
  -     now needs Vcoding_system_hash_table to be setup.
  -
  -     * coding.h (default_buffer_file_coding): Remove.
  -
  -     * coding.c (default_buffer_file_coding): Remove.
  -     (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
  -     than ->symbol, and use the terminal-local coding system.
  -     (syms_of_coding): Don't setup the coding-systems that are not
  -     terminal-local.
  -     (Fdefine_coding_system_internal): Use XCAR/XCDR.
  -
  -     * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
  -     Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
  -
  -     * alloc.c (Fmake_char_table, make_sub_char_table): Remove.  They're now
  -     in chartab.c and were re-added here by mistake.
  -     (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
  -
  -     * doc.c (Fsnarf_documentation):
  -     * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
  -     src to etc.
  -
  -     * ChangeLog.10: Add mistakenly removed entry.
  -
  -2008-02-01  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
  -
  -2008-02-01  Miles Bader  <miles@gnu.org>
  -
  -     * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
  -     Add extra args to FACE_FOR_CHAR.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * keymap.c (where_is_internal_1): If key is a cons, store the copy
  -     in sequence.
  -
  -     * chartab.c (map_sub_char_table, map_char_table): If the range
  -     contains just one character, call the function with that character
  -     even if the depth is not 3.
  -
  -2008-02-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (w32font_text_extents): Calculate metrics for the
  -     whole string.
  -
  -2008-02-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
  -
  -2008-02-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32term.c (x_set_glyph_string_clipping): Use
  -     get_glyph_string_clip_rects.
  -     (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
  -     Adjust for the change of struct glyph_string.
  -
  -     * w32font.c (w32font_draw): Do clipping here.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xftfont.c (xftfont_draw): Adjust for the change of struct
  -     glyph_string.
  -
  -     * xterm.c (x_set_glyph_string_clipping): Use
  -     get_glyph_string_clip_rects.
  -     (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
  -     Adjust for the change of struct glyph_string.
  -
  -     * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
  -     the resulting clip(s}.
  -     (expose_overlaps): Add arg r.  Change callers.  Set it to
  -     row->clip temporarily.
  -     (expose_window): Redraw rows overlapping the exposed area.
  -
  -     * dispextern.h (struct glyph_row): New member clip.
  -     (struct glyph_string): Delete members clip_x, clip_y, clip_width,
  -     clip_height, new member clip, and num_clips.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * data.c (Fchar_or_string_p): Fix docstring.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
  -     create a temporary XftDraw object.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (Ffontp): Fix docstring.
  -
  -     * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
  -     strong evidence of ISO-2022.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
  -     SYNTAX_ENTRY_FOLLOW_PARENT.
  -
  -2008-02-01  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
  -     its type.
  -     (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
  -     Update to the new type of weak_hash_tables and next_weak.
  -
  -     * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
  -     a plain C pointer to Lisp_Hash_Table.
  -
  -     * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
  -     (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
  -     (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
  -     (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
  -     (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
  -     (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
  -     (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
  -     (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
  -     (GC_EQ): Remove since they've been identical to their non-GC_
  -     alter-egos ever since the markbit was eradicated.
  -
  -     * alloc.c:
  -     * buffer.c:
  -     * buffer.h:
  -     * data.c:
  -     * fileio.c:
  -     * filelock.c:
  -     * fns.c:
  -     * frame.h:
  -     * lisp.h:
  -     * macterm.c:
  -     * print.c:
  -     * process.c:
  -     * w32fns.c:
  -     * w32menu.c:
  -     * w32term.c:
  -     * xfns.c:
  -     * xmenu.c:
  -     * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * chartab.c (map_sub_char_table): Make it work for the top-level
  -     char-table.  Fix handling of parent char-table.
  -     (map_char_table): Adjust for the above change.
  -
  -2008-02-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (Qgdi): Rename from Qw32.
  -
  -2008-02-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32bdf.c (get_quoted_string): Make function static.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xftfont.c (xftfont_open): If one of font's ASCII glyph has
  -     bigger ascent and descent than those of the font, use them as
  -     font's ascent and descent.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * Makefile.in (${lispsource}international/charprop.el): Move this
  -     target within "#ifdef HAVE_UNIDATA" and "#endif".
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
  -     (shortlisp): Add ../lisp/language/tai-viet.el.
  -
  -2008-02-01  Ulrich Mueller  <ulm@gentoo.org>
  -
  -     * Makefile.in (${lispsource}international/charprop.el): Depend on
  -     temacs${EXEEXT}.
  -
  -2008-02-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (w32font_close): Delete the GDI font object.
  -
  -     * w32menu.c: Include character.h.
  -
  -     * w32proc.c: Likewise.
  -
  -     * w32select.c: Likewise.
  -
  -     * makefile.w32-in (w32proc.o): Depend on character.h.
  -
  -2008-02-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
  -
  -     * w32menu.c (syms_of_w32menu): Likewise.
  -
  -     * w32proc.c (syms_of_ntproc): Likewise.
  -
  -     * w32select.c (syms_of_w32select): Likewise.
  -
  -     * w32term.c (syms_of_w32term): Likewise.
  -
  -2008-02-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (w32font_draw): Delete brush after using it.
  -
  -2008-02-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (w32font_open): Don't set font_idx.
  -     (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
  -     to font settings.
  -     (w32font_draw): Fill background explicitly.
  -
  -2008-02-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32term.c (w32_initialize): Don't call w32font_initialize.
  -
  -     * w32font.c (w32font_info): Remove subranges.
  -     (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
  -     (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
  -     (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
  -     (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
  -     (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
  -     (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
  -     (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
  -     (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
  -     (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
  -     (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
  -     New symbols.
  -     (font_callback_data): New struct.
  -     (w32font_list, w32font_match): Use it.
  -     (w32font_open): Don't populate subranges.
  -     (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
  -     (w32font_encode_char): Always return unicode code-point as-is.
  -     (w32font_text_extents): Supply a transformation matrix to
  -     GetGlyphOutline.  Never look up by glyph index.  Avoid looping
  -     twice.  Use unicode version of GetTexExtentPoint32 instead of
  -     glyph index version.
  -     (set_fonts_frame): Remove.
  -     (w32_enumfont_pattern_entity): Add frame parameter, use it to
  -     set frame parameter.  Use backward compatible fake foundries.
  -     Save generic family in extra slot under QCfamily.  Make width slot
  -     constant.  Save QCspacing value.  Save list of scripts instead of
  -     binary subranges.
  -     (w32_generic_family, logfonts_match, font_matches_spec): New functions.
  -     (add_font_entity_to_list): Use font_callback_data struct.  Filter
  -     unwanted fonts.
  -     (add_one_font_entity_to_list): Use font_callback_data struct.
  -     (w32_registry): Default to iso10646_1.
  -     (fill_in_logfont): Use dpi from extra slot.  Don't bother with
  -     string font registries.  Don't fill in font name if it is a generic
  -     family name, fill family instead.  Use spacing, family and script
  -     extra info to fill pitch, family and charset fields.
  -     (list_all_matching_fonts): Use font_callback_data struct.
  -     (unicode_range_for_char): Remove.
  -     (font_supported_scripts): New function.
  -     (w32font_initialize): Remove.
  -     (syms_of_w32font): Update which symbols are defined.
  -
  -2008-02-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * font.c (font_pixel_size): Reverse assq_no_quit args.
  -
  -     * w32term.h (FONT_WIDTH): Report max width, not average.
  -     (FONT_MAX_WIDTH): Remove.
  -     (FONT_AVG_WIDTH): New macro.
  -
  -     * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
  -     redefinition of FONT_WIDTH.
  -
  -     * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
  -     (w32_cache_char_metrics): Use FONT_WIDTH.
  -
  -     * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
  -
  -2008-02-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (w32font_open): Make lfHeight negative.
  -
  -     * w32fns.c (x_default_font_parameter): Use new style font name.
  -     (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
  -
  -2008-02-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32font.c (QCsubranges): New symbol.
  -     (w32font_open, w32font_has_char): Get subranges from subproperty
  -     of extra.
  -     (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
  -     (syms_of_w32font): Define :subranges symbol.
  -
  -     * font.c (font_put_extra): Expose externally.
  -
  -     * font.h (font_put_extra): Move declaration from font.c.
  -
  -     * font.c (Ffont_get): Use font driver to determine otf capability.
  -     (adjust_anchor): Check if driver defines anchor_point before using.
  -
  -     * w32font.c (w32font_open): Handle size, height and pixel_size better.
  -     (w32font_draw): Use options.
  -     (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
  -     Fix detection of truetype fonts.
  -     (registry_to_w32_charset): Handle charsets other than iso8859-1
  -     expressed as lisp symbols.
  -     (w32_registry): Express charset as lisp symbol.
  -     (fill_in_logfont): Reverse pixel and point height logic.
  -     Don't set width here.  Set quality to default.
  -
  -     * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
  -     (x_to_w32_font): Fill in lfPitchAndFamily correctly.
  -
  -     * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
  -     Remove redundant loop and allocation.
  -
  -     * makefile.w32-in (font.o, w32font.o): New objects.
  -     (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
  -     (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
  -
  -     * xdisp.c (fill_composite_glyph_string): Make the first arg to
  -     STORE_XCHARB a valid l-value.
  -
  -     * w32term.c (w32_native_per_char_metric): Swap width and rbearing
  -     calculations for non-Truetype fonts.
  -     (x_draw_glyph_string): Sync with xterm.c.
  -     (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
  -     Remove redundant code.
  -     (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
  -
  -     * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
  -     (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
  -
  -     * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
  -     (x_to_w32_charset, w32_to_x_charset): Expose externally.
  -
  -     * w32font.c: New file for w32 font backend.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * term.c: Don't include "buffer.h" twice.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * character.c (Funibyte_string): New function.
  -     (syms_of_character): Defsubr it.
  -
  -2008-02-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32term.c [USE_FONT_BACKEND]:
  -     (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
  -     (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
  -     (x_draw_glyph_string, x_draw_glyph_string_foreground)
  -     (x_draw_composite_glyph_string_foreground, x_new_fontset2)
  -     (x_free_frame_resources): Sync with xterm.c.
  -
  -2008-02-01  Andreas Schwab  <schwab@suse.de>
  -
  -     * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
  -     char-table size.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * ftfont.c (ftfont_driver): Delete font_otf_gsub and
  -     font_otf_gpos, add font_drive_otf.
  -
  -     * fontset.c (fontset_find_font): Pay attention to font size
  -     specified for a font.
  -     (reorder_font_vector): Check contents of font_def.
  -
  -     * font.c (struct otf_list): Delete it.
  -     (otf_list): Make it a lisp variable.
  -     (otf_open): Use lispy otf_list.
  -     (generate_otf_features): Rename from parse_gsub_gpos_spec.
  -     (check_otf_features): New function.
  -     (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
  -     New functions.
  -     (font_drive_otf): New function merging font_otf_gsub and
  -     font_otf_gpos.
  -     (font_open_for_lface): New arg spec.  Change argument order.
  -     (font_load_for_face): Adjust for the change of font_open_for_lface.
  -     (Ffont_drive_otf): New function merging Ffont_otf_gsub and
  -     Ffont_otf_gpos.
  -     (syms_of_font): Staticpro otf_list.  Delete defsubr of
  -     Sfont_otf_gsub and Sfont_otf_gpos.  Defsubr Sfont_drive_otf.
  -
  -     * xfaces.c (set_font_frame_param): Adjust for the change of
  -     font_open_for_lface.
  -
  -     * font.h (font_open_for_lface): Adjust prototype.
  -     (struct font_driver): Delete members otf_gsub and otf_gpos, add
  -     member otf_drive.
  -     (font_otf_gsub, font_otf_gpos): Delete externs.
  -     (font_drive_otf): Extern it.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_at): If the window W is not on a window system,
  -     return Qnil.
  -
  -     * coding.c (produce_chars, encode_coding): Don't call
  -     insert_from_gap if no characters to produce.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (free_realized_fontsets): Avoid unnecessary call of
  -     Fclear_face_cache.
  -
  -     * xfaces.c (face_for_font): Check also face->font==font->font.font.
  -
  -2008-02-01  Miles Bader  <miles@gnu.org>
  -
  -     * emacs.c (main): Change default value of `enable_font_backend' to 1.
  -     Parse "--disable-font-backend" option.
  -     (standard_args): Add "--disable-font-backend" option.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (fontset_find_font): New function.
  -     (fontset_font): Use fontset_find_font.
  -     (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
  -     Register the specified font for all Latin characters.
  -     (new_fontset_from_font): Register the specified font for all Latin
  -     characters.
  -     (dump_fontset): For a realized fontset, include the base fontset
  -     name in the returned vector.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * character.h (CHAR_STRING): Cast C to unsigned on calling
  -     char_string.
  -
  -     * character.c (char_string): Type of arg C changed to unsigned.
  -     Signal an error if C is an invalid character code.
  -
  -     * editfns.c (general_insert_function, Fchar_to_string):
  -     Use CHARACTERP, not INTEGERP.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * character.h (MIN_MULTIBYTE_LEADING_CODE)
  -     (MAX_MULTIBYTE_LEADING_CODE): New macros.
  -
  -     * regex.c (analyse_first): Fix for multibyte characters in "case
  -     charset:" and "case categoryspec:".
  -
  -2008-02-01  Andreas Schwab  <schwab@suse.de>
  -
  -     * Makefile.in (LIBES): Move standard libraries to the end.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
  -     nonzero, don't shrink the buffer nextb.
  -
  -     * buffer.h (struct buffer_text): New member inhibit_shrinking.
  -
  -     * coding.c (coding_alloc_by_making_gap): New arg offset.
  -     (alloc_destination): Call coding_alloc_by_making_gap with the arg
  -     offset.
  -     (decode_coding_iso_2022): Update coding->safe_charsets.
  -     (decode_coding_gap): Temporarily set
  -     current_buffer->text->inhibit_shrinking to 1.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xterm.c (x_draw_composite_glyph_string_foreground): Fix
  -     indexing into elements of s->cmp and s->char2b.
  -
  -2008-02-01  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
  -     target_multibyte instead of multibyte.
  -     (re_match_2_internal): Call bcmp_translate with target_multibyte.
  -     (bcmp_translate): Change the argument name from multibyte to
  -     target_multibyte.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     These changes are to compile a regexp into a pattern that can be
  -     used both for multibyte and unibyte targets.
  -
  -     * Makefile.in (search.o): Depend on charset.h.
  -
  -     * character.c (multibyte_char_to_unibyte_safe): New function.
  -
  -     * search.c: Include "charset.h".
  -     (compile_pattern_1): Delete argument multibyte.  Don't set
  -     cp->buf.target_multibyte here.  Set cp->buf.charset_unibyte.
  -     (compile_pattern): Don't compare cp->buf.target_multibyte.
  -     Compare cp->buf.charset_unibyte.
  -     (compile_pattern): Set cp->buf.target_multibyte.
  -
  -     * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
  -
  -     * regex.h (struct re_pattern_buffer): New member charset_unibyte.
  -
  -     * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
  -     multibyte.  Change callers.
  -     (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
  -     (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete.  Change callers
  -     to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
  -     (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
  -     (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
  -     (regex_compile): Make the compiled pattern usable both for
  -     multibyte and unibyte targets.
  -     (analyse_first): Make the fastmap usable both for multibyte and
  -     unibyte targets.
  -     (TRANSLATE_VIA_MULTIBYTE): Delete.
  -     (re_match_2_internal): Pay attention to the case that the
  -     multibyteness of bufp and target may be different.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xdisp.c (x_produce_glyphs): When a font is not found, make the
  -     empty box occupy at least one column width.
  -
  -2008-02-01  Miles Bader  <miles@gnu.org>
  -
  -     * Makefile.in: Remove redundant HAVE_XFT clause.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xrdb.c (x_load_resources): Setup the default fontSet X resource.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (Finternal_char_font): Fix for the case of POSITION
  -     being nil.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xftfont.c (xftfont_open): Call FcConfigSubstitute.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xftfont.c (xftfont_open): Don't enable antialias explicitly.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * search.c (simple_search): Fix previous change.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xftfont.c (ftfont_font_format): Extern declaration.
  -
  -     * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
  -
  -     * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
  -     (xfont_list): Don't directly use Lisp_Object as an operand of &&.
  -
  -     * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
  -     (ftfont_font_format): Fix previous change.
  -
  -     * font.h (Ffont_xlfd_name): EXFUN it.
  -
  -     * font.c (font_parse_xlfd): Fix the array size of `f'.
  -     (register_font_driver): Use EQ to compare driver->type.
  -
  -     * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
  -     (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
  -     (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
  -     (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xfont.c (xfont_open): Set font->format.
  -
  -     * xftfont.c (xftfont_open): Set font->format.
  -
  -     * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
  -     (ftfont_list): Include FC_FONTFORMAT in FcObject.
  -     (ftfont_open): Set font->format.
  -     (ftfont_font_format): New function.
  -
  -     * font.h (struct font): New member format.
  -
  -     * font.c (Qopentype): New variable.
  -     (syms_of_font): Defsym it.
  -     (Fquery_font): Change the format of the last element of the return
  -     value.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xfns.c (xic_create_xfontset): Try the default fontset name as a
  -     last resort.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (detect_coding_charset): Fix detection of multi-byte
  -     charset.
  -
  -2008-02-01  Bob Halley  <halley@play-bow.org>  (tiny change)
  -
  -     * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xdisp.c (get_next_display_element): Set it->face_id for the
  -     first component of a composition.
  -     (x_produce_glyphs): Check if the font is changed or not for composition.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (Qlatin): New variable.
  -     (syms_of_fontset): Define it as a lisp symbol.
  -     (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_unparse_fcname): Pay attention to the case that
  -     some of font property is a null string.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * term.c: Include "composite.h".
  -     (encode_terminal_code): Output all components of composition.
  -     Check the size of encode_terminal_src.
  -     (produce_glyphs): For composition, call produce_composite_glyph.
  -     (append_composite_glyph, produce_composite_glyph): New functions.
  -
  -     * xdisp.c (x_produce_glyphs): In handling composition, if a font
  -     is not found, get font_info from the current ascii face.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * fileio.c (Finsert_file_contents): On replacing, temporarily bind
  -     buffer-file-name to Qnil before calling insert_from_buffer.
  -
  -     * font.c (font_unparse_fcname): Pay attention to the case that
  -     foundry is a null string.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * ftfont.c (ftfont_list): Allow registry "unicode-sip".
  -
  -     * font.c (Qunicode_sip): New variable.
  -     (syms_of_font): Declare it as a Lisp symbol.
  -
  -     * font.h (Qunicode_sip): Extern it.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * composite.c (get_composition_id): Pay attention to TAB component.
  -
  -     * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
  -     TAB.  Adjust for the change of s->char2b which always points to
  -     the first element of allocated memory.
  -
  -     * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
  -
  -     * xdisp.c (handle_composition_prop): Set it->c to the first
  -     non-TAB component.
  -     (fill_composite_glyph_string): Change argument.
  -     (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
  -     (x_produce_glyphs): Fix handling of left/right padding.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (detect_coding_system): Fix for handling off
  -     inhibit_iso_escape_detection.  Fix for the case that no coding
  -     system is defined for a specific coding category.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_matching_entity): Delete unused local var.
  -
  -     * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
  -     opening a font.
  -
  -     * fileio.c (Finsert_file_contents): On recovering a file, assume
  -     Unix-like eol.
  -     (choose_write_coding_system): On auto-saving a file, force
  -     Unix-like eol.
  -
  -     * coding.c (setup_coding_system): Fix setting of
  -     coding->common_flags based on eol_type.
  -     (coding_inherit_eol_type): If PARENT is not nil, be sure to
  -     inherit from it.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * alloc.c (NSTATICS): Increas to 0x600.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
  -     (ftfont_list): Don't check :name property.
  -     (ftfont_match): New function.
  -     (ftfont_pattern_entity): If the pattern doesn't contain
  -     FC_SPACING, don't assume FC_MONO.
  -
  -     * font.h (struct font_driver): New member `match'.
  -     (font_update_drivers): Adjust prototype.
  -
  -     * font.c (font_parse_fcname, font_parse_name): Don't change :name
  -     property of FONT.
  -     (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
  -     them unconditionally.
  -     (font_matching_entity): New function.
  -     (font_open_by_name): Try font_matching_entity if exact match is
  -     not found.
  -     (font_update_drivers): Delete the arg FONT.  Return a list of
  -     actually used backends.  Don't free faces, font caches here.
  -     Don't store data in frame parameters.  Don't call x_set_font.
  -     (Ffont_spec): Store :name property as is.
  -     (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
  -     (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
  -     (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
  -     (Ffont_otf_alternates): Check if the driver has otf_gsub function.
  -     Call font->driver->otf_gsub instead of font_otf_gsub.
  -
  -     * frame.c (x_set_font_backend): Do more works that were done in
  -     font_update_drivers before.
  -
  -     * xfont.c (xfont_match): New function.
  -     (xfont_driver): Set xfont_driver.match to xfont_match.
  -     (xfont_draw): Set font in GC if necessary.
  -
  -     * ftxfont.c (ftxfont_match): New function.
  -     (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
  -
  -     * xftfont.c (xftfont_match): New function.
  -     (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.h (struct font): New member scalable.
  -     (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
  -     (font_otf_gsub): Adjust prototype.
  -
  -     * font.c (font_otf_capability): Fix handling of the default langsys.
  -     (parse_gsub_gpos_spec): Change type to void.  New arg nbytes.
  -     Check the contents of SPEC.
  -     (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
  -     (check_gstring): New function.
  -     (REPLACEMENT_CHARACTER): New macro.
  -     (font_otf_gsub): New arg alternate_subst.  Be sure to set all
  -     glyph codes of GSTRING.
  -     (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
  -     (font_prepare_composition): Set cmp->glyph_len.
  -     (font_open_entity): Set font->scalable.
  -     (Ffont_get): Handle :otf property.
  -     (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
  -     functions.
  -     (Fquery_font): Use font->font.full_name.
  -     (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
  -     Sfont_otf_alternates.
  -
  -     * ftfont.c (ftfont_open): Set font->font.full_name and
  -     font->font.name properly.  Fix calculation of font->font.height
  -     and font->min_width.
  -
  -     * ftxfont.c (ftxfont_create_gcs): New function.
  -     (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
  -     (ftxfont_draw_backgrond): Fix filling region.
  -     (ftxfont_default_fid): New function.
  -     (ftxfont_open): Set xfont->fid to the return value of
  -     ftxfont_default_fid.
  -     (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
  -     (ftxfont_done_face): Free only GCs that are created by
  -     ftxfont_create_gcs.
  -     (ftxfont_draw): If face->gc != s->gc, create proper GCs.
  -
  -     * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
  -     Clip to src->width, etc (not src->clip_XXX).
  -
  -     * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
  -     FontBackend frame parameter.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.h (struct font_driver_list): New member `on'.
  -     (Fclear_font_cache): EXFUN it.
  -     (font_update_drivers): Extern it.
  -
  -     * font.c (font_unparse_fcname): Fix typo (swidth->width).
  -     (font_list_entities): Check driver_list->on.
  -     (register_font_driver): Initialize `on' member to 0.
  -     (font_update_drivers): New function.
  -     (Fclear_font_cache): Check driver_list->on.
  -
  -     * frame.h (Qfont_backend): Extern it.
  -     (x_set_font_backend): Extern it.
  -
  -     * frame.c (Qfont_backend): New variable.
  -     (frame_parms): New element for font-backend.
  -     (x_set_font_backend): New function.
  -
  -     * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
  -     FontBackend frame parameter.
  -     (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
  -     x_set_font_backend.
  -
  -     * xfont.c (xfont_list): Don't try listing by :name property if the
  -     name is not for XLFD.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
  -     (LGLYPH_SET_TO): New macros.
  -     (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
  -     element of G is vector or not.
  -     (font_at): Extern it.
  -
  -     * font.c: Include window.h.
  -     (font_lispy_object): New function.
  -     (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
  -     end of valid glyph.
  -     (font_close_object): Fix getting (struct font *).
  -     (font_at): New function.
  -     (Ffont_get): If FONT is a font-object, get entity from it.
  -     (Ffont_make_gstring): Initialize elements of glyphs with nil.
  -     (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX.  Fix
  -     range check.
  -     (Ffont_at): New function.
  -     (syms_of_font): Defsubr Sfont_at.
  -
  -     * xdisp.c (it_props): Move the entry for Qauto_composed to just
  -     before the entry for Qcomposition.
  -     (handle_auto_composed_prop): Call auto-composition-function with 4 args.
  -     (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
  -     the font in gstring.
  -     (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
  -     LGLYPH_FORM (g) to detect the end of valid glyph.
  -     (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
  -     we are composing with gstring.
  -
  -     * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
  -     Check if adjustment is vector or not.
  -
  -     * Makefile.in (font.o): Make it depends on window.h.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xterm.c (x_draw_composite_glyph_string_foreground): Check if
  -     adjustment is vector or not.
  -
  -2008-02-01  Miles Bader  <miles@gnu.org>
  -
  -     * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
  -     (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
  -     (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
  -
  -     * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
  -     (DEVICE_DELTA): Fix typo.
  -     (font_otf_gpos, font_prepare_compositio): Adjust for the change of
  -     LGLYPH format.
  -
  -     * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
  -     the change of LGLYPH format.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * ftfont.c (ftfont_list): Fix typo.
  -     (ftfont_build_basic_charsets): Don't include letters with diacritics.
  -
  -2008-02-01  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
  -
  -     * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
  -     xftface_info is non-NULL.
  -
  -2008-02-01  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * ftfont.c (ftfont_list): Move misplaced #endif.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * ftfont.c (ftfont_list): Pay attention to the case that
  -     FC_CAPABILITY is not defined.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xftfont.c (xftfont_open): Set charset related members to -1.
  -
  -     * ftfont.c (ftfont_list): Handle QCotf property.  Fix handling of
  -     QCname.
  -     (ftfont_open): Set charset related members to -1.
  -
  -     * fontset.c (Votf_script_alist): New variable.
  -     (syms_of_fontset): Initialize it.
  -     (fontset_font): Delete unused variable.
  -
  -     * fontset.h (Votf_script_alist): Extern it.
  -
  -     * font.c (font_find_for_lface): Optimize code.
  -
  -     * font.h (font_close_object, font_merge_old_spec): Extern them.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
  -     (syms_of_font): Initialize them.
  -     (font_pixel_size): Allow float value in dpi.
  -     (font_prop_validate_type): Delete.
  -     (font_prop_validate_symbol, font_prop_validate_style): Change argument.
  -     Change caller.
  -     (font_prop_validate_non_neg): Rename from font_prop_validate_size.
  -     (font_prop_validate_extra): Delete.
  -     (font_prop_validate_spacing): New function.
  -     (font_property_table): Add elements for all known properties.
  -     (get_font_prop_index): Rename from check_font_prop_name.  New
  -     argument FROM.  Change caller.
  -     (font_prop_validate): Validate all known properties.
  -     (font_put_extra): Delete argument force.  Change caller.
  -     (font_expand_wildcards): Make it static.  Fix the way of shrinking
  -     the possible range.
  -     (font_parse_xlfd): Delete argument merge.  Fix handling of RESX,
  -     RESY, SPACING, and AVGWIDTH.  Don't validate property values here.
  -     Change caller.
  -     (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
  -     (font_parse_fcname): Delete argument merge.  Fix parsing of point
  -     size.  Don't validate properties values here.  Change caller.
  -     (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
  -     (font_open_by_name): Delete unused variable.
  -     (Ffont_spec): Likewise.  Validate property values.
  -     (Ffont_match_p): New function.
  -
  -     * font.h (QCscalable): Extern it.
  -     (font_parse_xlfd, font_parse_fcname): Adjust prototype.
  -
  -     * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
  -
  -     * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
  -     (xfont_list_pattern): New function.
  -     (xfont_list): Use xfont_list_pattern.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.h (Flist_fonts): EXFUN it.
  -
  -2008-02-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32term.c (w32_initialize): Add back smoothing_type and
  -     smoothing_enabled definitions.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
  -     s->face->font on determining underline position.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
  -     (font_has_char): Accept font-object too.
  -     (font_find_for_lface): Try at first with a size specified in face.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
  -     font_open_by_name.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.h (QCspacing, QCdpi): Extern them.
  -     (enum font_spacing): New enum.
  -     (FONT_PIXEL_SIZE_QUANTUM): New macro.
  -
  -     * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
  -     (QCspacing, QCdpi): New variables.
  -     (syms_of_font): Initialize them.
  -     (font_pixel_size): New function.
  -     (font_put_extra): New function.
  -     (font_parse_xlfd): Fix handling of font size.  Add QCdpi property
  -     in FONT_EXTRA.
  -     (font_parse_fcname): Handle enumerated values (e.g. bold).
  -     Fix handling font size.  Add QCname property that contains only
  -     unknown properties.
  -     (font_score): Change argument.  Change caller.  Pay attention to
  -     FONT_PIXEL_SIZE_QUANTUM.
  -     (font_sort_entites, font_list_entities, font_find_for_lface)
  -     (font_open_for_lface, font_open_by_name): Fix handling of font size.
  -     (Ffont_spec): Add QCname property that contains only unknown properties.
  -
  -     * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq.  Don't
  -     include weight in listing pattern, instead check weight of each
  -     listed font.  Don't include scalable in pattern.  Pay attention to
  -     FONT_PIXEL_SIZE_QUANTUM.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.c (font_parse_fcname): Fix parsing of point-size.
  -     (font_unparse_fcname): Produce symbolic names for style properties.
  -     (font_list_entities): Handle float size correctly.
  -     (font_open_by_name): Prefer `normal' property values if the name
  -     doesn't specify them.
  -
  -     * fontset.c (Finternal_char_font): Use font_get_name, not
  -     Ffont_xlfd_name.
  -
  -     * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
  -     FC_WEIGHT_REGULAR.  Exclude FC_SIZE and FC_PIXEL_SIZE from listing
  -     pattern.  Don't force scalable.
  -
  -     * xftfont.c (xftfont_open): For generating a name, start from
  -     96-byte buffer.
  -
  -2008-02-01  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * frame.h (x_new_fontset2): Fix prototype.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.h (struct font_driver): Delete member parse_name.
  -     (font_match_p, font_get_spec, font_parse_fcname)
  -     (font_unparse_fcname): Extern them.
  -     (font_get_name): Adjust prototype.
  -
  -     * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
  -     (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
  -     (font_expand_wildcards): Fix handling ENCODING field.  Avoid
  -     unnecessary checks for weight, slant, and swidth.
  -     (font_parse_fcname): New function.
  -     (font_unparse_fcname): New function.
  -     (font_parse_name): New function.
  -     (font_match_p): New function.
  -     (font_get_name): Change return value to Lisp string.
  -     (font_get_spec): New function.
  -     (Qunspecified, Qignore_defface): Don't extern them.
  -     (font_find_for_lface): Assume that LFACE is fully specified.
  -     (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
  -     object, use it for FACE.
  -     (font_open_by_name): Call Ffont_spec with QCname prop.  Don't call
  -     driver->parse_name.
  -     (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
  -
  -     * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
  -     prototype.
  -
  -     * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
  -     argument F.  Don't call Fnew_fontset.  Instead, directly call
  -     make_fontset.
  -
  -     * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
  -
  -     * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
  -     of x_new_fontset2.
  -
  -     * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
  -     (Qsans__serif): New variables.
  -     (ftfont_generic_family_list): New variable.
  -     (syms_of_ftfont): Initialize the above variables.
  -     (ftfont_pattern_entity): Delete argument NAME.
  -     (ftfont_list_generic_family): New function.
  -     (ftfont_parse_name): Delete this function.
  -     (ftfont_list): Try generic family only when FcFontList found no font.
  -     (ftfont_list_family): Fix args to FcObjectSetBuild.
  -
  -     * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
  -     object in attrs[LFACE_FONT_INDEX].
  -     (set_lface_from_font_name): Cancel all changes for font-backend.
  -     (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
  -     function.
  -     (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
  -     font object in QCfont attribute.
  -     (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
  -     (realize_default_face) [USE_FONT_BACKEND]: Call
  -     set_lface_from_font_and_fontset.
  -
  -     * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
  -     "fixed", and signal error here if no suitable font was found.
  -
  -     * xfont.c (xfont_parse_name): Delete this function.
  -
  -     * xftfont.c (xftfont_open): Change coding style of error
  -     handling.  Generate fontconfig's fontname pattern.
  -
  -     * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
  -     (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
  -
  -     * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
  -     Both args FONTSET and FONT_OBJECT must be existing ones.
  -
  -2008-02-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xfont.c (xfont_open, xfont_encode_char): Fix typo.
  -
  -     * font.h (struct font): Fix typo.
  -
  -     * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
  -     XLFD_XXX_INDEX.
  -     (enum xlfd_field_mask): New enum.
  -     (intern_font_field): Changed argument.  Change caller.  If digits
  -     are followed by non-digits, return a symbol.
  -     (font_expand_wildcards): New function.
  -     (font_parse_xlfd): Fix wildcard handling.
  -     (Ffont_spec): If :name is specified, reflect the info in the other
  -     properties.
  -
  -     * ftfont.c (ftfont_pattern_entity): Fix typo.
  -     (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
  -     locale.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
  -
  -     * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
  -     (font_unparse_xlfd): Fix argument type declaration.  Append "*" if
  -     registry doesn't specify encoding part.
  -     (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
  -     (font_open_by_name): At first try parsing the name.
  -     (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
  -     as Lisp symbols.
  -
  -     * fontset.c (reorder_font_vector): Pay attention to the case that
  -     the 3rd element of font_def is nil.
  -     (fontset_font): For the default fontset, append one more fontset
  -     elements for a script-based font specification.  Don't add script
  -     attribute on finding a font.
  -     (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
  -     font name.
  -     (fontset_ascii_font): If a font can't be opened, return nil.
  -
  -     * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
  -     (ftfont_pattern_entity): New function.
  -     (ftfont_get_cache): Assume that freetype_font_cache is already
  -     initialized.
  -     (ftfont_list): Handle the case that a file is specified in font
  -     name.  Use ftfont_pattern_entity to generate entities.
  -     (ftfont_has_char): Check if the pattern contains FC_CHARSET.
  -     (syms_of_ftfont): Initialize freetype_font_cache.
  -
  -     * xftfont.c (xftfont_open): Make the font name fontconfig's
  -     style.  Add BLOCK_INPUT and UNBLOCK_INPUT.
  -     (xftfont_close): Free font->font.name if not NULL.
  -
  -     * xfont.c (xfont_list): If script is specified for a font, return
  -     null_vector.
  -     (xfont_list_family): Declare argument type.
  -
  -     * xfaces.c (set_lface_from_font_name): If a font doesn't have a
  -     name, set LFACE_FONT (lface) to nil.
  -
  -     * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
  -     return Qnil.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
  -     (standard_args): Add "-enable-font-backend".
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xftfont.c (xftfont_default_fid): Set fid_known to 1.
  -     (struct xftdraw_list, xftdraw_list): Delete them.
  -     (register_xftdraw, check_xftdraw): Delete them.
  -     (xftfont_prepare_face): Don't call register_xftdraw.
  -     (xftfont_done_face): Don't call check_xftdraw.
  -     (xftfont_draw): Get background color only when with_background is
  -     nonzero.
  -
  -     * xfont.c (xfont_encode_char): Fix calculation of char2b.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     These changes are for the new font handling codes.
  -
  -     * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
  -     @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
  -     (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
  -     (FONTSRC, FONTOBJ): New variables.
  -     (obj): Add $(FONTOBJ).
  -     (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
  -     (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
  -     @LIBOTF_LIBS@.
  -     (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
  -     (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
  -
  -     * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
  -
  -     * character.h (Vscript_representative_chars): Extern it.
  -
  -     * character.c (Vscript_representative_chars): New variable.
  -     (syms_of_character): Declare it as a Lisp variable.
  -
  -     * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
  -     enable_font_backend is nonzero, accept the composition method
  -     COMPOSITION_WITH_GLYPH_STRING.
  -
  -     * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
  -     enumeration COMPOSITION_WITH_GLYPH_STRING.
  -
  -     * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
  -     members clip_x, clip_y, clip_width, and clip_height.
  -     (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
  -
  -     * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
  -     --enable-font-backend.  Call syms_of_font.
  -
  -     * fns.c (assoc_no_quit): New function.
  -
  -     * fontset.h (FONT_INFO_FROM_FACE): New macro.
  -     (face_for_font, new_fontset_from_font)
  -     (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
  -
  -     * fontset.c [USE_FONT_BACKEND]: Include "font.h".
  -     (fontset_font, fontset_ascii, face_for_char)
  -     (make_fontset_for_ascii_face, Ffont_info)
  -     (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
  -     is nonzero, use font-backend mechanism.
  -     (find_font_encoding): Make it non-static.
  -     (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
  -     New functions.
  -
  -     * frame.h (struct frame): New members resx and resy.
  -     (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
  -     (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
  -
  -     * frame.c [USE_FONT_BACKEND]: Include "font.h".
  -     (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
  -
  -     * lisp.h (assoc_no_quit): Extern it.
  -
  -     * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
  -     Through out the file, use FONT_INFO_FROM_FACE instead of
  -     FONT_INFO_FROM_ID, use get_per_char_metric instead of
  -     rif->per_char_metric.
  -     (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
  -     method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
  -     (get_glyph_face_and_encoding, fill_composite_glyph_string)
  -     (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
  -     (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
  -     nonzero, use font-backend mechanism.
  -     (get_per_char_metric): New function.
  -
  -     * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
  -     (set_lface_from_font_name)
  -     (set_font_frame_param, free_realized_face)
  -     (prepare_face_for_display, clear_face_gcs)
  -     (Finternal_set_font_selection_order, realize_x_face)
  -     [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
  -     font-backend mechanism.
  -     (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
  -     (load_face_font) [USE_FONT_BACKEND]: Abort.
  -     (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
  -     (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
  -
  -     * xfns.c [USE_FONT_BACKEND]: Include "font.h".
  -     (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
  -     (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
  -     nonzero, register all available font drivers.  Call
  -     x_default_font_parameter for deciding a font.
  -     (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
  -
  -     * xterm.c [USE_FONT_BACKEND]: Include "font.h".
  -     (x_set_mouse_face_gc, x_set_glyph_string_clipping)
  -     (x_set_glyph_string_clipping_exactly)
  -     (x_compute_glyph_string_overhangs)
  -     (x_draw_glyph_string_foreground)
  -     (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
  -     (x_free_frame_resources) [USE_FONT_BACKEND]: If
  -     enable_font_backend is nonzero, use font-backend mechanism.
  -     (x_new_fontset2) [USE_FONT_BACKEND]: New function.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
  -     system_eol_type.
  -     (syms_of_coding): Initialize system_eol_type.
  -
  -     * process.c (Fset_process_coding_system): Inherit system's eol
  -     format if necessary.
  -
  -2008-02-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (decode_eol): Pay attention to buffer relocation in
  -     del_range_2.
  -     (decode_coding): Call decode_eol before restoring undo_list.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * charset.c (Fdefine_charset_internal): Fix setting of
  -     emacs_mule_bytes.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * keyboard.c (read_char): Check if C is a character or not before
  -     looking up Vkeyboard_translate_table.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
  -     condition to terminate the loop.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (produce_composition): Compare charbuf[i] instead of
  -     args[i] against 0.
  -     (Fterminal_coding_system): Use EQ to compare Lisp objects.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (DECODE_COMPOSITION_START): If the source is short, set
  -     coding->result to CODING_RESULT_INSUFFICIENT_SRC.
  -     (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
  -     detect_coding.
  -     (emacs_mule_char): Handle old style (Emacs 20) component character
  -     of a composition.
  -     (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
  -     (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
  -     composition rule.
  -     (decode_coding_emacs_mule): Handle invalid bytes correctly.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (encode_coding_ccl): Allocate destination dynamically
  -     when necessary.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
  -     the loop.  When quitted, show a proper error message.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xterm.c (x_set_glyph_string_clipping_exactly): Set
  -     src->clip_head and src->clip_tail temporarily instead of src->hl.
  -
  -     * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
  -     character sequence.
  -     (Fccl_execute_on_string): Use ASET, not XSET.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (decode_coding): Fix the condition of terminating the
  -     decoding loop.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * data.c (Faset): On setting a character bigger than 255 in a
  -     unibyte string, signal an error instead of make the string multibyte.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * charset.c (map_charset_chars): Fix for ascii-compatible charset
  -     made by a mapping table.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
  -     not.
  -     (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
  -     (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
  -
  -     * xterm.c (x_draw_composite_glyph_string_foreground): Check
  -     s->face is NULL or not.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xterm.c (x_set_glyph_string_clipping_exactly): New function.
  -     (x_draw_glyph_string): Fix drawing of right_overhang and
  -     left_overhang around/on cursor.
  -
  -     * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xdisp.c (x_produce_glyphs): Handle composition with TAB.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (Fdefine_coding_system_internal)
  -     (Fdefine_coding_system_alias): Avoid a duplicated element in
  -     Vcoding_system_alist.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
  -
  -     * coding.c (Qcoding_system_define_form): New variable.
  -     (syms_of_coding): Intern and staticpro it.
  -     (Fcoding_system_p): Check Qcoding_system_define_form.
  -     (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
  -
  -     * coding.h (CODING_SYSTEM_P): If ID is not available, call
  -     Fcoding_system_p.
  -     (CHECK_CODING_SYSTEM): If ID is not available, call
  -     Fcheck_coding_system.
  -     (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
  -     Try also Fcheck_coding_system.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (code_conversion_restore): GCPRO arg.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * character.c (lisp_string_width): Check multibyteness of STRING.
  -
  -2008-02-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * macterm.c (mac_encode_char): Call ccl_driver with the last arg
  -     Qnil.  Use JIS_TO_SJIS instead of ENCODE_SJIS.
  -     (decode_mac_font_name): Use decode_coding_c_string instead of
  -     decode_coding.
  -     (x_load_font): Initialize fontp->fontset to -1.  Set
  -     fontp->encoding_type.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * search.c (search_buffer): Give up BM search on case-fold-search
  -     if one of a target character has a case-equivalence of different
  -     byte length even if that target character is an ASCII.
  -     (simple_search): Fix calculation of byte length of matched text.
  -     (boyer_moore): Fix handling of case-equivalent multibyte characters.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (decode_coding): Fix handling of invalid bytes.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
  -     Unicode characters.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (encode_coding_object): If a pre-write-conversion
  -     function makes a new buffer, kill it.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (QCascii_compatible_p): New variable.
  -     (syms_of_coding): Initialize it.
  -     (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
  -     calling string_char.
  -     (record_conversion_result): Add `default:' case.
  -     (coding_charset_list): Delete unused variable `coding_type'.
  -     (Fdefine_coding_system_internal): Add `ascii-compatible-p'
  -     property in the plist of the coding system.
  -     (Fcoding_system_put): Check QCascii_compatible_p.
  -
  -2008-02-01  Miles Bader  <miles@gnu.org>
  -
  -     * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
  -     removed calculation of frame `f', as it's now used.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
  -     (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
  -     (UNIDATA): New variable.
  -     (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
  -     (bootstrap-emacs${EXEEXT}): Depends on charprop.el.  Run
  -     $(RUN_TEMACS) unconditionally.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
  -     (admindir): New variable.
  -     ($(lispsource)international/charprop.el): New target.
  -
  -2008-02-01  Miles Bader  <miles@gnu.org>
  -
  -     * character.c (chars-in-region): Remove obsolete function.
  -     (syms_of_character): Remove its initialization.
  -
  -2008-02-01  Benjamin Riefenstahl  <b.riefenstahl@turtle-trading.net>
  -
  -     * w32select.c (validate_coding_system)
  -     (setup_windows_coding_system): New functions.
  -     (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
  -     setup_windows_coding_system.
  -     (setup_config, Fw32_get_clipboard_data): Use
  -     validate_coding_system.
  -     (Fx_selection_exists): Move call to setup_config to a place
  -     where signals are allowed.
  -
  -     * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
  -     (Fcheck_coding_system): Add declarations.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * charset.c (load_charset_map_from_vector): Fix for the first iteration.
  -
  -2008-02-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
  -     string as the second argument for x_new_fontset.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (decode_coding_object): Use safe_call1 instead of call1.
  -     (encode_coding_object): Use safe_call instead of call2.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (Fset_fontset_font): Check family element of a given vector.
  -
  -     * Makefile.in (lisp): Include charprop.el.
  -
  -2008-02-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
  -     Not sure if it's unnecessary.
  -
  -2008-02-01  Steven Tamm  <steventamm@mac.com>
  -
  -     * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
  -     some possibly unnecessary fontset checking code that crashed
  -     when creating a new frame.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
  -     lookup_face.
  -
  -     * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
  -
  -     * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c: Cancel the change done in HEAD on 2008-02-01.
  -     (coding_charset_list): New function.
  -
  -     * coding.h (coding_charset_list): Extern it.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (Fset_fontset_font): Call find_font_encoding with
  -     concatenation of family and registry.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * character.h (BYTE8_STRING): Fix typo.
  -
  -     * editfns.c (Ftranslate_region_internal): Don't convert unibyte
  -     string to multibyte (sync to HEAD).
  -
  -     * casefiddle.c (casify_region): Handle changes in byte-length
  -     using replace_range_2 (sync to HEAD).
  -
  -2008-02-01  Andreas Schwab  <schwab@suse.de>
  -
  -     * chartab.c (map_char_table): GCPRO table and arg.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
  -     already at limit.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (fs_load_font): Use fast_string_match_ignore_case
  -     instead of fast_c_string_match_ignore_case.
  -     (find_font_encoding): Change argument to Lisp_Object.  Use
  -     fast_string_match_ignore_case instead of
  -     fast_c_string_match_ignore_case.  Change caller.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xdisp.c (get_next_display_element): In unibyte case, decide to
  -     display in octal form by checking a character by
  -     UNIBYTE_CHAR_HAS_MULTIBYTE_P.
  -
  -     * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
  -
  -     * character.c (unibyte_has_multibyte_table): New variable.
  -
  -     * character.h (unibyte_has_multibyte_table): Extern it.
  -     (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (encode_coding_iso_2022): Fix handling of charset
  -     annotation.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (setup_coding_system): If coding_system is nil, use
  -     Qundecided.
  -     (Fterminal_coding_system): Return nil if terminal coding system is
  -     `undecided'.
  -     (syms_of_coding): Define coding-system `undecided' here.  Setup
  -     terminal_coding as `undecided'.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xdisp.c (message_dolog, set_message_1): Call
  -     unibyte_char_to_multibyte with arg type int.
  -
  -     * lread.c (read1): Fix reading of a char-table.
  -
  -     * print.c (print_object): Include sub char-table in circularities
  -     detection.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
  -     Append the found sequences in car of ARGS instead of prepending.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * fileio.c (report_file_error): Make a unibyte string from
  -     strerror (errorno).
  -     (Fsubstitute_in_file_name): Fix the arg to
  -     unibyte_char_to_multibyte.  It is evaluated twice.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (detect_coding_utf_16): Don't set detect_info->found if
  -     BOM is not found.
  -     (detect_coding, detect_coding_system): Optimization for ISO-2022
  -     when no 8-bit data is found.
  -
  -2008-02-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32fns.c (x_to_w32_font): Update to use new coding struct.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
  -     CHARS.
  -
  -2008-02-01  Steven Tamm  <steventamm@mac.com>
  -
  -     * macterm.c (mac_encode_char): Add charset argument and update
  -     to use encoding_type.
  -     (x_new_font, x_new_fontset): Merge in changes from xterm.c;
  -     switch to pure fontset.
  -     (decode_mac_font_name): Temporarily remove decoding.
  -     (x_font_name_to_mac_font_name): Temporarily remove encoding.
  -     (x_load_font): Temporarily remove encoding.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xfaces.c (Fface_font): If frame is not on a window system,
  -     ignore CHARACTER arg.  If HAVE_WINDOW_SYSTEM is not defined, don't
  -     refer to face->font.
  -     (split_font_name_into_vector, build_font_name_from_vector)
  -     (lookup_non_ascii_face, realize_non_ascii_face): Define them only
  -     when HAVE_WINDOW_SYSTEM is defined.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
  -     (x_produce_glyphs): Fix setting of members of cmp in case
  -     cmp->glyph_len is zero.
  -
  -     * fontset.c (Fset_fontset_font): Fix docstring.
  -     (Ffontset_info): Make it backward compatible.  New arg ALL.
  -
  -2008-02-01  Kim F. Storm  <storm@cua.dk>
  -
  -     * process.c (read_process_output): Grow decoding_buf when needed;
  -     this could cause a crash in allocate_string and compact_small_strings.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * fileio.c (WRITE_BUF_SIZE): Delete this macro.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (setup_coding_system): Set coding->common_flags
  -     correctly for raw-text.
  -     (consume_chars): On encoding unibyte text by raw-text, don't check
  -     multibyte form.
  -     (encode_coding): On encoding by raw-text, never use translation tables.
  -
  -     * fileio.c (e_write): Short cut for the case of no encoding.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (detect_coding, detect_coding_system): Delete unused
  -     variables.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
  -     (consume_chars): Fix handling of 8-bit bytes in unibyte source.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (Ffind_coding_systems_region_internal): Include
  -     raw-text and no-conversion in the result.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
  -     (load_font_get_repertory): Delete unnecessary check of ENCODING of
  -     FONT_DEF.
  -     (font_def_arg, add_arg, from_arg, to_arg): New args.
  -     (set_fontset_font): Change argument.
  -     (Fset_fontset_font): Fix for the case that TARGET is a script
  -     name and charset name.
  -     (new_fontset_from_font_name): Fix argument to Fnew_fontset.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (fontset_font): Rename from fontset_face.  Change return
  -     value.
  -     (face_suitable_for_char_p, face_for_char): Adjust for the change
  -     of fontset_font.
  -     (make_fontset_for_ascii_face): Fix setting of the fontset element
  -     for ASCII.
  -     (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
  -     to get a font name.
  -     (Ffontset_info): Adjust for the change of fontset_font.
  -
  -     * coding.c (emacs_mule_char): Check invalid code more rigidly.
  -
  -     * character.h (LEADING_CODE_LATIN_1_MIN)
  -     (LEADING_CODE_LATIN_1_MAX): Delete these macros.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * editfns.c (check_translation): New function.
  -     (Ftranslate_region_internal): Handle M:N mapping.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
  -     goto invalid_code.
  -     (decode_coding_iso_2022): Fix handling of invalid designation.
  -
  -     * fileio.c (Finsert_file_contents): Be sure to call unbind_to
  -     after calling code_conversion_save.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
  -
  -     * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
  -
  -     * fontset.c: Include "intervals.h".
  -     (fontset_face): Fix comparing of Lisp_Objects.
  -     (free_face_fontset, new_fontset_from_font_name): Fix
  -     Lisp_Object/int mixup.
  -
  -     * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
  -
  -     * coding.c: Add many prototypes for static functions.
  -     (get_translation_table): Allow max_lookup to be NULL.
  -     (decode_coding, Ffind_coding_systems_region_internal)
  -     (Funencodable_char_position, Fcheck_coding_systems_region): Call
  -     get_translation_table with max_lookup NULL.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (get_translation_table): Declare it as Lisp_Object.
  -     (LOOKUP_TRANSLATION_TABLE): New macro.
  -     (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
  -     instead of CHAR_TABLE_REF.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
  -     annotation data format.
  -     (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
  -     Change arguments FROM and TO to single argument NCHARS.  Change caller.
  -     (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
  -     (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
  -     (decode_coding_ccl, decode_coding_charset): Pay attention to
  -     coding->charbuf_used.
  -     (get_translation): New function.
  -     (produce_chars): New arguments translation_table and last_block.
  -     Translate characters here.  Return number of carryover chars.
  -     Change caller.
  -     (produce_composition): New argument pos.  Change caller.
  -     Adjust for the change of annotation data format.
  -     (produce_charset, produce_annotation): Likewise.
  -     (decode_coding, encode_coding): Don't call translate_chars.
  -     (consume_chars): New arg translation_table.  Change caller.
  -     (translate_chars): Delete.
  -     (syms_of_coding): Make translation-table's number of extra slots 2.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * search.c (simple_search): Fix setting this_pos_byte in backward
  -     search.
  -
  -     * coding.c (detect_coding_emacs_mule): Fix counting of encoded
  -     byte sequence.
  -     (detect_coding_ccl): Fix setting of the variable valids.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
  -
  -     * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
  -
  -     * editfns.c (Ftranslate_region_internal): Rename from
  -     Ftranslate_region.  Accept a char-table in TABLE.
  -     (syms_of_editfns): Defsubr Stranslate_region_internal.
  -
  -     * xfaces.c (set_lface_from_font_name): If a font is specified for
  -     a frame, generate a fontset from the font.
  -     (build_scalable_font_name): If the scalable font is requested for
  -     a specific size, don't change that size.
  -     (try_font_list): Try a scalable font also in the case that a
  -     pattern string is specified.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xfaces.c (Fface_font): New optional arg CHARACTER.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * charset.h (CHARSET_OFFSET): New macro.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
  -
  -     * fontset.c (fontset_face): Handle the case that repertory is a
  -     char-table.
  -     (find_font_encoding): Return nil for unknown encoding.
  -     (Fset_fontset_font): Ignore a font of unknown encoding.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * keymap.c (describe_vector): Handle default value of a char table.
  -
  -     * fontset.c (fontset_face): Handle fallback fonts correctly.
  -     (Ffontset_info): Return infomation about fallback fonts.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (FONTSET_DEFAULT): New macro.
  -     (FONTSET_ADD, fontset_add): Handle the case that range is nil.
  -     (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
  -     the case that it is nil.
  -     (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
  -     (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
  -
  -     * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
  -     subset or superset.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * emacs.c (main): Call init_charset after syms_of_XXX.
  -
  -     * charset.c (Vcharset_map_directory): Delete.
  -     (Vcharset_map_path): New variable.
  -     (load_charset_map_from_file): Use Vcharset_map_path instead.
  -     (init_charset): Initialize Vcharset_map_path.
  -     (syms_of_charset): Delete declaration of "charset-map-directory",
  -     add declaration of "charset-map-path".
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
  -     ASCII only string.
  -
  -     * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
  -
  -     * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
  -     (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
  -
  -     * coding.c (QCmnemonic, QCdefalut_char)
  -     (QCdecode_translation_table, QCencode_translation_table)
  -     (QCpost_read_conversion, QCpre_write_conversion): New variables.
  -     (get_translation_table): Return a list of translation tables if
  -     necessary.
  -     (decode_coding): Call get_translation_table with ENCODEP 0.
  -     (char_encodable_p): If translation_table is non-nil, always call
  -     translate_char.
  -     (Fdefine_coding_system_internal): Accept list of translation
  -     tables as :encode-translation-table and :decode-translation-table.
  -     (Fcoding_system_put): New function.
  -     (syms_of_coding): Declare new symbols.  Defsubr
  -     Scoding_system_put.
  -     (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
  -     typically JISX0212.
  -
  -     * charset.c (map_charset_chars): Fix arg to map_charset_chars in
  -     when the charset is superset type.
  -
  -     * character.c (translate_char): Accept list of translation tables.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
  -     (CODING_ATTR_TRANS_TBL): New macro.
  -
  -     * coding.c (get_translation_table): New function.
  -     (translate_chars): Fix the bug of skipping annotation data.
  -     (decode_coding, encode_coding): Utilize get_translation_table.
  -     (char_encodable_p, Funencodable_char_position): Translate char if
  -     necessary.
  -     (Ffind_coding_systems_region_internal)
  -     (Fcheck_coding_systems_region): Setup translation table for encode
  -     in a coding system attribute vector in advance.
  -     (Fdefine_coding_system_internal): Allow a symbol as translation
  -     table.  For shift-jis type coding system, allow 4th charset.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (decode_coding_sjis): Check the first byte rigidly.
  -
  -     * xdisp.c (get_next_display_element): Pass -1 as POS to
  -     FACE_FOR_CHAR if displaying a C-string.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * composite.c (get_composition_id): Handle xoff and yoff in a
  -     composition rule.
  -
  -     * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
  -     (struct composition): New member lbearing and rbearing.
  -
  -     * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
  -     (x_get_glyph_overhangs): Handle a composition glyph.
  -     (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
  -
  -     * xterm.c (x_compute_glyph_string_overhangs): Handle also a
  -     composition glyph.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * print.c: Include charset.h.
  -     (Vprint_charset_text_property): New variable.
  -     (Qdefault): Extern it.
  -     (PRINT_STRING_NON_CHARSET_FOUND)
  -     (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
  -     (print_check_string_result): New variable.
  -     (print_check_string_charset_prop): New function.
  -     (print_prune_charset_plist): New variable.
  -     (print_prune_string_charset): New function.
  -     (print_object): Call print_prune_string_charset if
  -     Vprint_charset_text_property is not t.
  -     (print_interval): Print nothing if interval->plist is nil.
  -     (syms_of_print): Declare Vprint_charset_text_property as a lisp
  -     variable.  Init and staticpro print_prune_charset_plist.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (new_fontset_from_font_name): Use the specified font
  -     for all characters in the new fontset.
  -
  -     * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
  -     OBJECT args.
  -
  -     * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
  -     OBJECT args for composition too.
  -
  -     * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
  -     OBJECT args.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
  -
  -     * fontset.c (reorder_font_vector): Adjust for the change of
  -     FONT_DEF format.
  -     (fontset_face): New arg id.  Change caller.
  -     (face_for_char): New args pos and object.
  -     (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
  -     (fs_query_fontset): Check NAME by Fassoc too.
  -     (Fset_fontset_font): Allow non-XLFD font name.
  -     (Ffontset_info): Adjust for the change of FONT_DEF format.
  -
  -     * fontset.h (face_for_char): Adjust prototype.
  -
  -     * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
  -     (append_space, extend_face_to_end_of_line)
  -     (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
  -     (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
  -
  -     * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
  -     POS and OBJECT args.
  -
  -     * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
  -     POS and OBJECT args.
  -
  -2008-02-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
  -     of GlobalAlloc'ed memory.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
  -
  -     * charset.h (charset_table_used): Delete extern.
  -
  -     * charset.c (charset_table_used): Make it static.
  -     (map_charset_chars): Fix args to c_function with.
  -
  -     * chartab.c (map_sub_char_table_for_charset): Fix args to
  -     c_function with.
  -
  -     * coding.h (enum coding_result_code): Delete
  -     CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
  -
  -     * coding.c (Qinsufficient_source, Qinconsistent_eol)
  -     (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
  -     (Vlast_code_conversion_error): New variables.
  -     (syms_of_coding): DEFSYM or DEFVAR_LISP them.
  -     (ONE_MORE_BYTE): Record error if any instead of signaling an
  -     error.  If non-ASCII multibyte char is found, return the negative
  -     value of the code.  All callers changed to check it.
  -     (ONE_MORE_BYTE_NO_CHECK): Likewise.
  -     (record_conversion_result): New function.  Change all codes setting
  -     coding->result to call this function.
  -     (detect_coding_utf_8, decode_coding_utf_8)
  -     (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
  -     Don't use the local variable incomplete.
  -     (emacs_mule_char): Change the second arg to `const'.
  -     (decode_coding): Fix of flushing out unprocessed data.
  -     (make_conversion_work_buffer): Fix making of a work buffer.
  -     (decode_coding_object): Return coding->dst_object.
  -
  -     * fontset.c (set_fontset_font): Fix args.
  -
  -     * lisp.h (CHARACTERBITS): Define as 22.
  -
  -     * process.c (send_process): Be sure to set coding->src_multibyte.
  -
  -     * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xdisp.c (handle_auto_composed_prop): Give limit to
  -     Fnext_single_char_property_change.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * composite.c (syms_of_composite): Don't make the composition hash
  -     table weak.
  -
  -     * fontset.c (Fset_fontset_font): Fix docstring.
  -
  -     * lisp.h (detect_coding_system): Adjust prototype.
  -
  -     * fileio.c (kill_workbuf_unwind): Delete this function.
  -     (Finsert_file_contents): Adjust the call of detect_coding_system.
  -     Get conversion_buffer by code_conversion_save.  Use the macro
  -     CODING_MAY_REQUIRE_DECODING.  After decoding, update
  -     coding_system.
  -
  -     * coding.h (make_conversion_work_buffer): Delete extern.
  -     (code_conversion_save): Extern it.
  -
  -     * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
  -     (CODING_GET_INFO): Delete argument eol_type.  Change callers.
  -     (decode_coding_utf_8): Don't do eol converion.
  -     (detect_coding_utf_16): Check coding->src_chars, not
  -     coding->src_bytes.  Add heuristics for those that have no signature.
  -     (decode_coding_emacs_mule, decode_coding_iso_2022)
  -     (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
  -     Don't do eol converion.
  -     (adjust_coding_eol_type): Return a new coding system.
  -     (detect_coding): Don't detect eol.  Fix for utf-16 detection.
  -     (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
  -     each change.
  -     (decode_coding): Pay attention to undo_list.  Do eol conversion for
  -     all types of coding-systems (if necessary).
  -     (Vcode_conversion_work_buf_list): Delete it.
  -     (Vcode_conversion_reused_workbuf): Rename from
  -     Vcode_conversion_reused_work_buf.
  -     (Vcode_conversion_workbuf_name): New variable.
  -     (reused_workbuf_in_use): New variable.
  -     (make_conversion_work_buffer): Delete the arg DEPTH.
  -     (code_conversion_restore): Change argument to cons.
  -     (code_conversion_save): Delete the argument BUFFER.  Change callers.
  -     (detect_coding_system): New argument src_chars.  Change callers.
  -     Fix for utf-16 detection.
  -     (init_coding_once): Don't use ISO_carriage_return.
  -     (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
  -     reused_workbuf_in_use.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * keymap.c (store_in_keymap): Pay attention to the case that idx
  -     is a cons specifying a character range.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xdisp.c (handle_auto_composed_prop): Fix the case of returning
  -     HANDLED_RECOMPUTE_PROPS.
  -
  -     * coding.c (Fdefine_coding_system_internal): Fix checking of
  -     ascii compatibility.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * charset.c (find_charsets_in_text): Delete unused locale variable.
  -     (Fset_charset_priority): Update Vemacs_mule_charset_list too.
  -
  -     * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
  -     Resync charset_list to Vemacs_mule_charset_list.
  -
  -     * keymap.c (store_in_keymap): Pay attention to the case that idx
  -     is a cons specifying a character range.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * composite.c (update_compositions): Bind inhibit-read-only, etc
  -     to t before calling remove-list-of-text-properties.
  -
  -     * print.c (print_object): Always print ASCII chars as is.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
  -
  -     * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
  -     is a char table.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xfaces.c (set_lface_from_font_name): Fix for the case that
  -     FONTNAME is not fontset name.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * fns.c (base64_encode_1): Fix previous change.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (set_fontset_font): New function.
  -     (Fset_fontset_font): If a font is specified for a charset, use
  -     map_charset_chars to store the font spec in a fontset.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (fontset_face): Create a fallback fontset on demand.
  -     (make_fontset): Don't create a fallback fontset here.
  -     (free_face_fontset): Free a fallback fontset (if any) too.
  -     (n_auto_fontsets): Delete this variable.
  -     (auto_fontset_alist): New variable.
  -     (new_fontset_from_font_name): Check auto_fontset_alist.
  -     (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
  -     (Ffontset_list_all) [FONTSET_DEBUG]: New function.
  -     (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
  -     Defsubr Sfontset_list_all.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (Fnew_fontset): Check NAME more rigidly.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * editfns.c (Fgoto_char): Fix docstring.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * insdel.c (insert_from_gap): Adjust intervals correctly.
  -
  -2008-02-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
  -     (pfnGetFontUnicodeRanges): New dynamically loaded function.
  -     (w32_initialize): Try to load it.
  -     (x_get_font_repertory): Use it if available.
  -     (w32_encode_char): Add shortcut for unicode output.
  -
  -     * w32fns.c (w32_load_system_font): Default charset to -1.
  -     (x_to_w32_charset): Match all fonts for unicode.
  -     (w32_to_x_charset): New parameter matching.  Don't return partial
  -     or wildcard charsets.
  -     (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
  -     (w32_codepage_for_font): Return CP_UNICODE for unicode.
  -     (w32_to_x_font): Match charset to real charset.
  -     (enum_font_cb2): Always list unicode versions.
  -
  -     * makefile.w32-in (temacs): Increase EMHEAP.
  -
  -2008-02-01  Jason Rumney  <jasonr@gnu.org>
  -
  -     * w32term.c (w32_encode_char): New charset parameter.
  -     font_info.encoding becomes encoding_type.
  -     (x_get_font_repertory): New function.  Warning: stub only!
  -     (x_new_font): Return quickly if font already set.
  -     (x_new_fontset): fontsetname parameter is Lisp_Object.
  -     Use new fs_query_fontset.  Try new_fontset_from_font_name.
  -     Use fontset_name for return value.
  -
  -     * w32term.h: Declare x_get_font_repertory.
  -
  -     * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
  -     place of find_charset_in_text.  Use encode_coding_object in place
  -     of encode_coding.
  -     (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
  -     decode_coding.
  -
  -     * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
  -     of x_new_fontset.
  -     (w32_load_system_font): Initialize charset as unicode.
  -     font_info.encoding becomes encoding_type.
  -     (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
  -     (x_to_w32_font): Use encode_coding_object in place of encode_coding.
  -     (syms_of_w32fns): Set get_font_repertory_func.
  -
  -     * w32console.c: Include character.h.  Use terminal_encode_buffer
  -     from term.c.
  -     (write_glyphs): Use new version of encode_terminal_code.  Use
  -     encode_coding_object in place of encode_coding.
  -
  -     * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
  -     encoding becomes encoding_type.
  -
  -     * term.c (terminal_encode_buffer): Make externally visible.
  -
  -     * makefile.w32-in: Add character.h dependancies.
  -     (character.o, chartab.o): New targets.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
  -     CODING_ID_EOL_TYPE.
  -
  -2008-02-01  Andreas Schwab  <schwab@suse.de>
  -
  -     * coding.c (produce_chars): Revert last change.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * charset.h (charset_unicode): Extern it.
  -
  -     * charset.c (string_xstring_p): Check by (C >= 0x100).
  -     (find_charsets_in_text): Change format of the arc CHARSETS.  New
  -     arg MULTIBYTE.
  -     (Ffind_charset_region, Ffind_charset_string): Adjust for the
  -     change of find_charsets_in_text.
  -     (Fsplit_char): Fix doc.  Never return unknown.
  -
  -     * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
  -
  -     * coding.c (Fdefine_coding_system_alias): Update
  -     Vcoding_system_list.
  -
  -     * fontset.c (load_font_get_repertory): Pay attention to the case
  -     that ENCODING of a font is specified by a char-table.
  -
  -     * xterm.c (x_get_font_repertory): Handle the case that the
  -     encoding of font is other than Unicode.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * term.c (encode_terminal_code): Don't handle glyph-table.  Check
  -     if a character is encodable by the terminal coding system.  If
  -     not, produces proper number of `?'s.  Update
  -     terminal_encode_buffer and terminal_encode_buf_size if necessary.
  -     (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
  -     variables.
  -     (encode_terminal_code): Change argument.  Encode multiple
  -     characters at once.  Store the result of encoding in
  -     terminal_encode_buffer.
  -     (write_glyphs, insert_glyphs): Adjust for the change of
  -     encode_terminal_code.
  -     (term_init): Initialize terminal_encode_buffer and
  -     terminal_encode_buf_size.
  -
  -     * coding.c (consume_chars): If coding->src_object is nil, don't
  -     check annotation.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * character.c (char_string): Use ASCII_CHAR_P instead of
  -     SINGLE_BYTE_CHAR_P.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xdisp.c (handle_auto_composed_prop): Check if the last
  -     characters of auto-composed region is newly composed with the
  -     following characters.
  -     (handle_composition_prop): Fix checking of point being inside
  -     composition.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * fns.c (concat): Don't change multibyteness of the result by
  -     concatenating an 8-bit character.
  -
  -     * data.c (Faset): Check newelt by CHECK_CHARACTER.  Don't change
  -     multibyteness of the result when newelt is an 8-bit character.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
  -     EMACS_INT.
  -
  -     * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
  -
  -     * xfaces.c (face_numeric_value): Declare dim size_t.
  -     (Finternal_lisp_face_equal_p): Remove unused f.
  -
  -     * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
  -     (MATRIX_ROW): Remove unused vars.
  -     (draw_glyphs, x_insert_glyphs, fast_find_position)
  -     (fast_find_position, fast_find_string_pos): Use EMACS_INT for
  -     byte/char counts.
  -
  -     * regex.c (regex_compile): Remove unused var.
  -
  -     * minibuf.c (Fminibuffer_complete_word): Remove unused var.
  -
  -     * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
  -     (Faccessible_keymaps, where_is_internal): Remove unused vars.
  -
  -     * keyboard.c (cancel_hourglass_unwind): Return Qnil.
  -
  -     * frame.c (frame_name_fnn_p): Make len EMACS_INT.
  -
  -     * fileio.c (Fwrite_region): Remove unused var.
  -
  -     * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
  -     (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
  -
  -     * composite.c (Fremove_list_of_text_properties): Declare.
  -
  -     * coding.c (inhibit_pre_post_conversion): Remove (unused).
  -     (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
  -     (coding_inherit_eol_type): Remove unused attrs.
  -     (detect_coding): Cast arg of detect_eol.
  -
  -     * charset.c (syms_of_charset): Remove unused var p.
  -     (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
  -     byte/char counts.
  -
  -     * casetab.c (set_case_table): Remove unused var.
  -
  -     * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
  -     unused vars.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * xterm.c (x_bitmap_mask): Declare.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * xterm.c (x_term_init): Fix type error.
  -
  -     * lisp.h: Add Funibyte_char_to_multibyte.
  -
  -     * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
  -     (Fset_coding_system_priority): Doc fix.
  -
  -     * ccl.c (ccl_driver): Fix arg of CHARACTERP.
  -
  -     * indent.c (check_composition): Make start and end EMACS_INT.
  -
  -     * character.c (lisp_string_width): Make ignore and end EMACS_INT.
  -
  -     * xdisp.c (handle_composition_prop, check_point_in_composition):
  -     Make buffer positions EMACS_INT.
  -
  -     * composite.c (find_composition, run_composition_function)
  -     (update_compositions, Ffind_composition_internal): Make buffer
  -     positions EMACS_INT.
  -
  -     * composite.h (find_composition, update_compositions): Make
  -     position args EMACS_INT.
  -
  -     * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
  -
  -     * intervals.c (get_property_and_range):
  -     * intervals.h (get_property_and_range): Make start and end EMACS_INT.
  -
  -     * unexalpha.c: Don't include varargs.h.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * coding.h (ENCODE_UTF_8): New.
  -
  -     * Makefile.in (gtkutil.o): Depend on coding.h.
  -
  -     * coding.c (Fset_coding_system_priority): Doc fix.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * fileio.c (Finsert_file_contents): Call setup_coding_system in
  -     the case of auto saving.
  -
  -2008-02-01  Andreas Schwab  <schwab@suse.de>
  -
  -     * chartab.c (map_char_table, map_char_table_for_charset): Protect
  -     `range' from GC.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (decode_coding_sjis): Check bytes more rigidly.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * fileio.c (choose_write_coding_system): Return a decided coding system.
  -     (Fwrite_region): Set Vlast_coding_system_used to the return value
  -     of choose_write_coding_system.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * charset.c (Fset_charset_priority): Pay attention to duplicated
  -     arguments.
  -
  -     * coding.c (QCcategory): New variable.
  -     (syms_of_coding): Defsym it.  Set all elements of
  -     Vcoding_category_table and their symbol values.
  -     (Fset_coding_system_priority): Doc fix.  Update symbol qvalues of
  -     coding-category-XXX, and coding-category-list.
  -     (Fdefine_coding_system_internal): Add category in the plist.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * callproc.c (Fcall_process): Handle carryover correctly.
  -
  -     * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
  -     (raw_text_coding_system): Check NILP (coding_system).
  -     (coding_inherit_eol_type): Check NILP (coding_system) and
  -     NILP (parent).
  -     (consume_chars): Fix for the case of raw-text.
  -
  -     * process.c (read_process_output): Handle carryover correctly.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * regex.c (re_search_2): Fix last change.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
  -     target_multibyte.  Even in a unibyte case, return a converted
  -     multibyte char.
  -     (GET_CHAR_AFTER): New macro.
  -     (PATFETCH): Translate via multibyte char.
  -     (HANDLE_UNIBYTE_RANGE): Delete this macro.
  -     (SETUP_MULTIBYTE_RANGE): New macro.
  -     (regex_compile): Setup compiled code so that its multibyteness
  -     matches that of a target.  Fix the handling of "[X-YZ]" using
  -     SETUP_MULTIBYTE_RANGE.
  -     (analyse_first) <charset>: For filling fastmap for all multibyte
  -     characters, don't check by BASE_LEADING_CODE_P.
  -     (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp).  It is
  -     the same as RE_MULTIBYTE_P (bufp) now.
  -     (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
  -     (TARGET_CHAR_AND_LENGTH): Delete this macro.
  -     (TRANSLATE_VIA_MULTIBYTE): New macro.
  -     (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
  -     It is the same as RE_MULTIBYTE_P (bufp) now.
  -     <exactn>: Translate via multibyte.
  -     <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH.  Don't
  -     translate it.
  -     <charset, charset_not>: Fetch a character by
  -     RE_STRING_CHAR_AND_LENGTH.  Translate via multibyte.
  -     <duplicate>: Call bcmp_translate with the last arg `multibyte'.
  -     <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
  -     notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
  -     by GET_CHAR_AFTER.
  -     (bcmp_translate): Likewise.
  -
  -     * search.c (compile_pattern): Check the member target_multibyte,
  -     not the member multibyte of buf.
  -
  -     * lread.c (read1): While reading a string, set force_singlebyte
  -     and force_multibyte correctly.
  -
  -     * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
  -     up of unibyte_to_multibyte_table.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (setup_coding_system): If coding has
  -     post-read-conversion or pre-write-conversion, set
  -     CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
  -     respectively.
  -     (decode_coding_gap): Run post-read-conversion if any.
  -
  -     * fileio.c (Finsert_file_contents): Even if we read into a
  -     unibyte buffer, check if we must decode the result or not.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (make_conversion_work_buffer): Change the work buffer
  -     name to the same one as that of Emacs 21.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.h (make_conversion_work_buffer): Adjust prototype.
  -     (code_conversion_restore): Don't extern it.
  -
  -     * coding.c (detected_mask): Delete unused variable.
  -     (decode_coding_iso_2022): Pay attention to the byte sequence of
  -     CTEXT extended segment, and retain those bytes as is.
  -     (decode_coding_ccl): Delete unused variable `valids'.
  -     (setup_coding_system): Delete unused variable `category'.
  -     (consume_chars): Delete unused variable `category'.  Make it work
  -     for non-multibyte case.
  -     (make_conversion_work_buffer): Change argument.
  -     (saved_coding): Delete unused variable.
  -     (code_conversion_restore): Don't check saved_coding->destination.
  -     (code_conversion_save): New function.
  -     (decode_coding_gap, encode_coding_gap): Call code_conversion_save
  -     instead of record_unwind_protect.
  -     (decode_coding_object, encode_coding_object): Likewise.  Recover PT.
  -     (detect_coding_system): Delete unused variable `mask'.
  -     (Fdefine_coding_system_internal): Delete unused variable id.
  -
  -     * fileio.c (kill_workbuf_unwind): New function.
  -     (Finsert_file_contents): On replacing, call
  -     make_conversion_work_buffer with correct args, and call
  -     record_unwind_protect with the first arg kill_workbuf_unwind.
  -
  -     * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
  -     (fontset_add): Fix for the case that TO is less than TO1.
  -     (Ffontset_info): Don't use fallback fontset on checking the
  -     default fontset.
  -     (dump_fontset): New function for debugging.
  -
  -     * coding.c (Fdefine_coding_system_internal): Fix for the case that
  -     coding_type is Qcharset.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
  -     (map_char_table): Don't inherit the value from the parent on
  -     initializing VAL.  Adjust for the above change.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (Qsignature, Qendian): Delete these variables.
  -     (syms_of_coding): Don't initialize them.
  -     (CATEGORY_MASK_UTF_16_AUTO): New macro.
  -     (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
  -     detect_info->found.
  -     (decode_coding_utf_16): Don't detect BOM here.
  -     (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
  -     is NOT utf_16_without_bom.
  -     (setup_coding_system): For a coding system of type utf-16, check
  -     if the attribute :endian is Qbig or not (not nil or not), and set
  -     CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
  -     (detect_coding): If coding type is utf-16 and BOM detection is
  -     required, detect it.
  -     (Fdefine_coding_system_internal): For a coding system of type
  -     utf-16, check if the attribute :endian is Qbig or not (not nil or not).
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (coding_set_source): Fix for the case that the current
  -     buffer is different from coding->src_object.
  -     (decode_coding_object): Don't use the conversion work buffer if
  -     DST_OBJECT is a buffer.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * lread.c (read_emacs_mule_char) [len==2]: Index
  -     emacs_mule_charset correctly.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
  -     (detect_coding_big5, decode_coding_big5, encode_coding_big5)
  -     (Fdecode_big5_char, Fencode_big5_char): Delete.  (Big5 no longer
  -     treated specially.)
  -     (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
  -     (detected_mask): Remove Big5 bits.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     The following changes are to make the font rescaling facility
  -     compatible with Emacs 21.
  -
  -     * xfaces.c (Vface_font_rescale_alist): Rename from
  -     Vface_resizing_fonts.
  -     (struct font_name): Rename member resizing_ratio to rescale_ratio.
  -     (font_rescale_ratio): Rename from font_resizing_ratio.
  -     (split_font_name): Set font->rescale_ratio.
  -     (better_font_p): Pay attention to font->rescale_ratio.
  -     (build_scalable_font_name): Likewise.  Change RESX, and RESY
  -     fields.
  -     (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
  -     (Qutf_16_le): Remove these variables.
  -     (syms_of_coding): Don't DEFSYM them.
  -     (decode_coding_utf_16): Fix handling of BOM.
  -     (encode_coding_utf_16): Fix handling of BOM.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * fileio.c (Finsert_file_contents): On replacing, before decoding
  -     the file into the work buffer, set point of the work buffer to the end.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * coding.c (Fcheck_coding_systems_region): Fix type errors.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
  -     and fix C types.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xdisp.c (SKIP_GLYPHS): New macro.
  -     (set_cursor_from_row): Pay attention to string display properties.
  -
  -     * category.c (copy_category_entry): Fix for the case that RANGE
  -     is an integer.
  -
  -     * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
  -
  -     * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * charset.c (Fcharset_id_internal): New function.
  -     (syms_of_charset): Defsubr it.
  -
  -     * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
  -     with the last arg charset_list acquired from coding.
  -     (Fdefine_coding_system_internal): For ccl-based coding system, fix
  -     the attribute coding_attr_ccl_valids.
  -
  -     * coding.h (enum define_coding_ccl_arg_index): Set the first
  -     member coding_arg_ccl_decoder to coding_arg_max.
  -
  -     * ccl.h (ccl_driver): Adjust prototype.
  -
  -     * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
  -     (ccl_driver): New arg CHARSET_LIST.  Use the above macros instead
  -     of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
  -     (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
  -     last arg Qnil.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
  -     call encode_char.
  -
  -     * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * composite.c (syms_of_composite): Make composition_hash_table weak.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * dispextern.h (check_face_attributes, generate_ascii_font_name)
  -     (font_name_registry): Don't extern them.
  -     (split_font_name_into_vector, build_font_name_from_vector): Extern them.
  -
  -     * fontset.h (Qfontset): Don't extern it.
  -     (new_fontset_from_font_name): Extern it.
  -
  -     * fontset.c: Give 8 extra slots to fontset objects.
  -     (Qfontset_info): New variable.
  -     (syms_of_fontset): Defsym it.
  -     (FONTSET_FALLBACK): New macro.
  -     (fontset_face): Try also the default fontset.
  -     (make_fontset): Realize a fallback fontset from the default fontset.
  -     (generate_ascii_font_name): Move from xfaces.c.  Rewritten by
  -     using split_font_name_into_vector and build_font_name_from_vector.
  -     (Fset_fontset_font): Access the elements of font_spec by enum
  -     FONT_SPEC_INDEX.  If font_spec is a string, extract the registry
  -     name by using split_font_name_into_vector.
  -     (Fnew_fontset): If no ASCII font is specified in FONTLIST,
  -     generate a proper font name from the fontset name.  Update
  -     Vfontset_alias_alist.
  -     (n_auto_fontsets): New variable.
  -     (new_fontset_from_font_name): New function.
  -     (Ffont_info): Store the information about fonts generated from the
  -     default fontset in the first extra slot of the returned char-table.
  -
  -     * xfaces.c (generate_ascii_font_name): Move to fontset.c.
  -     (font_name_registry): Delete function.
  -     (split_font_name_into_vector): New function.
  -     (build_font_name_from_vector): New function.
  -     (font_list): The argument REGISTRY is now a list of registry names.
  -     (choose_face_font): If we are choosing an ASCII font, and ATTRS
  -     specifies an explicit font name, return the name as is.  Make a
  -     list of registy names.
  -
  -     * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
  -     of x_new_fontset.
  -     (Fx_create_frame): Don't call x_new_fontset here.  Just use
  -     x_list_fonts to check the existence of fonts.
  -
  -     * xterm.h (x_new_fontset): Adjust prototype.
  -
  -     * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
  -     string.  Use new_fontset_from_font_name to create a fontset from a
  -     font name.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * syntax.c (Vfind_word_boundary_function_table): New name for
  -     Vnext_word_boundary_function_table.
  -     (find-word-boundary-function-table): New name for
  -     next-word-boundary-function-table.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * Makefile.in: Fix some dependencies.
  -
  -     * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
  -     set it to nil before returning.
  -
  -     * composite.c (update_compositions): Fix type error.
  -
  -     * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xterm.c (x_new_font): Optimize for the case that the font is
  -     already set for the frame.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * chartab.c (char_table_ascii): Check if the char table contents
  -     is sub-char-table or not.
  -     (char_table_set, char_table_set_range): Fix argument to
  -     char_table_ascii.
  -
  -     * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
  -     (detect_coding_utf_8, detect_coding_utf_16)
  -     (detect_coding_emacs_mule, detect_coding_iso_2022)
  -     (detect_coding_sjis, detect_coding_big5)
  -     (detect_coding_ccl, detect_coding_charset): Change argument MASK
  -     to DETECT_INFO.  Update DETECT_INFO and return 1 if the byte
  -     sequence is valid in this coding system.  Change callers.
  -     (MAX_ANNOTATION_LENGTH): New macro.
  -     (ADD_ANNOTATION_DATA): New macro.
  -     (ADD_COMPOSITION_DATA): Change argument.  Change callers.  Call
  -     ADD_ANNOTATION_DATA.  Change the format of annotation data.
  -     (ADD_CHARSET_DATA): New macro.
  -     (emacs_mule_char): New argument ID.  Change callers.
  -     (decode_coding_emacs_mule, decode_coding_iso_2022)
  -     (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
  -     Produce charset annotation data in coding->charbuf.
  -     (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
  -     to charset annotation data in coding->charbuf.
  -     (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
  -     coding->common_flags if the coding system is iso-2022 based and
  -     uses designation.
  -     (produce_composition): Adjust for the new annotation data format.
  -     (produce_charset): New function.
  -     (produce_annotation): Handle charset annotation.
  -     (handle_composition_annotation, handle_charset_annotation): New
  -     functions.
  -     (consume_chars): Handle charset annotation.  Utilize the above two
  -     functions.
  -     (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
  -     buffer, get the deleted text as a string and set
  -     coding->src_object to that string.
  -     (detect_coding, detect_coding_system): Use the new struct
  -     coding_detection_info.
  -
  -     * coding.h (struct coding_detection_info): New structure.
  -     (struct coding_system): Adjust prototype of the member `detector'.
  -     (CODING_ANNOTATE_CHARSET_MASK): New macro.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * insdel.c (insert_from_gap): Fix argument to offset_intervals.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
  -     (Fapropos_internal): Don't gcpro apropos_accumulate.  Set result
  -     to new local and nullify apropos_accumulate before returning.
  -     (syms_of_keymap): Staticpro and initialize apropos_accumulate.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * charset.c (Fdefine_charset_internal): Setup charset.fast_map
  -     correctly.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * fns.c (Flanginfo): Call synchronize_system_time_locale.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     The following changes are to make character composition happen
  -     automatically on displaying.
  -
  -     * Makefile.in (lisp, shortlisp): Add composite.elc.
  -
  -     * composite.h (Qauto_composed, Vauto_composition_function)
  -     (Qauto_composition_function): Extern them.
  -
  -     * composite.c (Vcomposition_function_table)
  -     (Qcomposition_function_table): Delete variables.
  -     (Qauto_composed, Vauto_composition_function)
  -     (Qauto_composition_function): New variables.
  -     (run_composition_function): Don't call
  -     compose-chars-after-function.
  -     (update_compositions): Clear `auto-composed' text property.
  -     (compose_chars_in_text): Delete this function.
  -     (syms_of_composite): Staticpro Qauto_composed and
  -     Qauto_composition_function.  Declare Vauto_composition_function as
  -     a Lisp variable.
  -
  -     * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
  -
  -     * xdisp.c (it_props): Add an entry for Qauto_composed.
  -     (handle_auto_composed_prop): New function.
  -
  -     * xselect.c (selection_data_to_lisp_data): Don't call
  -     compose_chars_in_text.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * keyboard.c (read_char): Modify checking around use of
  -     Vkeyboard_translate_table.
  -
  -     * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
  -     and fix C types.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
  -     (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
  -     (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
  -     the case that the last byte is '\r' correctly.
  -     (decode_coding): Flush out the unprocessed data correctly.
  -     (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * xterm.c (XTread_socket): Fix changes for defined keysyms.
  -     Add XK_ISO... case.
  -     (xaw_scroll_callback): Revert last change.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xfaces.c (Vface_resizing_fonts): New variable.
  -     (struct font_name): New member `resizing_ratio'.
  -     (font_resizing_ratio): New function.
  -     (split_font_name): Set font->resizing_ratio.
  -     (better_font_p): Pay attention to font->resizing_ratio.
  -     (build_scalable_font_name): Likewise.  Don't change POINT_SIZE,
  -     RESX, and RESY fields.
  -     (try_alternative_families): Try scalable fonts if
  -     Vscalable_fonts_allowed is not Qt.
  -     (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * xterm.c (xaw_scroll_callback): Cast correctly.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
  -     (lispy_kana_keys): Comment out.
  -     (make_lispy_event) [XK_kana_A]: Comment out.
  -
  -     * xterm.c (xaw_scroll_callback): Cast call_data.
  -     (XTread_socket): Deal with ASCII keysyms.
  -     (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * xterm.c (Vx_keysym_table): New.
  -     (syms_of_xterm): Initialize it.
  -     (XTread_socket): Use it.
  -     From head: Eliminate incorrect optimization that tried to avoid
  -     decoding the output of X*LookupString.
  -     (x_get_font_repertory): Delete charset declaration.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (detect_coding_charset): If only ASCII bytes are found,
  -     return 0.
  -     (Fdefine_coding_system_internal): Setup
  -     CODING_ATTR_ASCII_COMPAT (attrs) correctly.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
 ++2011-09-18  Eli Zaretskii  <eliz@gnu.org>
 + 
  -     * coding.c (Fcheck_coding_system): Doc fix.
 ++     * xdisp.c (reseat_at_next_visible_line_start): Fix last change.
 + 
  -     * editfns.c (Finsert_byte): Return a proper value.
  +2011-09-18  Paul Eggert  <eggert@cs.ucla.edu>
   
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  +     Fix minor problem found by static checking.
  +     * xdisp.c (reseat_at_next_visible_line_start): Mark locals as
  +     initialized, to pacify gcc -Wuninitialized.
   
  -     * coding.c (decode_coding): Fix args to translate_chars.  Pay
  -     attention to Vstandard_translation_table_for_decode.
  -     (encode_coding): Fix args to translate_chars.  Pay attention to
  -     Vstandard_translation_table_for_encode.
  +     * fileio.c: Report proper errno when syscall falls.
  +     (Finsert_file_contents): Save and restore errno,
  +     so that report_file_error outputs the correct diagnostic.
  +     (Fwrite_region) [CLASH_DETECTION]: Likewise.
   
  -     * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
  -     SINGLE_BYTE_CHAR_P.
  +2011-09-18  Eli Zaretskii  <eliz@gnu.org>
   
  -     * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
  -     not by SINGLE_BYTE_CHAR_P.
  +     * .gdbinit (pgx): Fix references to fields of `struct glyph'.
   
  -     * fns.c (concat): Check CH by ASCII_CHAR_P, not by
  -     SINGLE_BYTE_CHAR_P.
  +2011-09-17  Eli Zaretskii  <eliz@gnu.org>
   
  -     * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
  -     SINGLE_BYTE_CHAR_P.
  +     * xdisp.c (produce_stretch_glyph): Another fix for changes made on
  +     2011-08-30T17:32:44Z!eliz@gnu.org.  (Bug#9530)
   
  -     * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
  -     by SINGLE_BYTE_CHAR_P.
  +2011-09-17  Eli Zaretskii  <eliz@gnu.org>
   
  -     * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
  -     SINGLE_BYTE_CHAR_P.
  +     * xdisp.c (reseat_at_next_visible_line_start): Keep information
  +     about the current paragraph and restore it after the call to
  +     reseat.
   
  -2008-02-01  Dave Love  <fx@gnu.org>
  +     * bidi.c (MAX_PARAGRAPH_SEARCH): New macro.
  +     (bidi_find_paragraph_start): Search back for paragraph beginning
  +     at most MAX_PARAGRAPH_SEARCH lines; if not found, return BEGV_BYTE.
  +     (bidi_move_to_visually_next): Only trigger paragraph-related
  +     computations when the last character is a newline or at EOB, not
  +     just any NEUTRAL_B.  (Bug#9470)
   
  -     * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
  +     * xdisp.c (set_cursor_from_row): Don't invoke special treatment of
  +     truncated lines if point is covered by a display string.  (Bug#9524)
   
  -2008-02-01  Dave Love  <fx@gnu.org>
  +2011-09-16  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * fns.c (Flanginfo): Fix typo.
  +     * xselect.c: Relax test for outgoing X longs (Bug#9498).
  +     (cons_to_x_long): New function.
  +     (lisp_data_to_selection_data): Use it.  Correct the test for
  +     short-versus-long data; it was negated.  Break out of vector
  +     loop, for efficiency, when a long datum is discovered.
   
  -     * unexelf.c (unexec): Make last change conditional on Irix 6.5.
  +2011-09-16  Stefan Monnier  <monnier@iro.umontreal.ca>
   
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  +     * eval.c (Fquote): Document its non-consing behavior (bug#9482).
   
  -     * coding.c (detect_coding_utf_8, detect_coding_utf_16)
  -     (detect_coding_emacs_mule, detect_coding_iso_2022)
  -     (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
  -     incomplete byte sequence.  Don't update *mask when correctly detected.
  -     (decode_coding_sjis): Fix decoding of katakana-jisx0201.
  -     (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
  -     (detect_coding, detect_coding_system): Adjust for the changes above.
  +2011-09-16  Eli Zaretskii  <eliz@gnu.org>
   
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  +     * image.c (tiff_handler): Work around a bug in MinGW GCC 3.x (see
  +     GCC PR/17406) by declaring this function with external scope.
   
  -     * character.c (char_string): Rename from
  -     char_string_with_unification.  Pay attention to CHAR_MODIFIER_MASK.
  -     (string_char): Rename from string_char.
  +2011-09-15  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
  -     if C is greater than MAX_3_BYTE_CHAR.
  -     (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
  -     string_char instead of string_char_with_unification.
  +     * editfns.c (Fformat): Fix bug in text-property fix (Bug#9514).
  +     Don't mishandle (length (format "%%")) and (format "%4000s%%" "").
   
  -2008-02-01  Dave Love  <fx@gnu.org>
  +2011-09-15  Andreas Schwab  <schwab@linux-m68k.org>
   
  -     * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
  +     * editfns.c (Fformat): Correctly handle text properties on "%%".
   
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  +2011-09-15  Eli Zaretskii  <eliz@gnu.org>
   
  -     * keymap.c (push_key_description): Pay attention to force_multibyte.
  -
  -     * regex.c (re_search_2): Fix for the case of unibyte buffer.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * charset.c (define_charset_internal): Rename `supprementary'.
  -
  -     * Makefile.in (lisp, shortlisp): Remove latin-N.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * xfns.c (x_window, x_window): Use use_xim.
  -
  -     * xterm.c (use_xim): Initialize.
  -     (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
  -     (x_term_init): Maybe set use_xim.
  -
  -     * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * search.c (search_buffer): Fix case-fold-search of multibyte
  -     characters.
  -     (boyer_moore): Rename the last argument to char_high_bits.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xdisp.c (display_string): Fix for the case of zero width glyph.
  -
  -     * xfns.c (x_set_font): Change the error message of the case that
  -     x_new_fontset returns Qt.
  -
  -     * xfaces.c (set_lface_from_font_name): Reject the default fontset.
  -     (Finternal_set_lisp_face_attribute): Use signal_error for the
  -     error of invalid fontset.
  -
  -     * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
  -     fontset, return Qt.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * unexelf.c (unexec): Make .got handling not SGI-specific.
  -
  -     * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
  -
  -     * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
  -
  -     * keyboard.c (read_key_sequence): Fix type error.
  -
  -     * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
  -     type error.
  -
  -     * fontset.c (fontset_add): Return Lisp_Object.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * charset.h (charset_ordered_list_tick): Declare extern.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     The following changes (and some of 2008-02-01 changes of mine) are
  -     for handling syntax, category, and case conversion for unibyte
  -     characters by converting them to multibyte on the fly.  With these
  -     changes, we don't have to setup syntax and case tables for unibyte
  -     characters in each language environment.
  -
  -     * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
  -     multibyte if necessary.
  -
  -     * bytecode.c (Fbyte_code): Likewise.
  -
  -     * character.h (LEADING_CODE_LATIN_1_MIN)
  -     (LEADING_CODE_LATIN_1_MAX): New macros.
  -     (unibyte_to_multibyte_table): Extern it.
  -     (unibyte_char_to_multibyte): New macro.
  -     (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
  -     (CHAR_LEADING_CODE): New macro.
  -     (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
  -
  -     * character.c (unibyte_to_multibyte_table): New variable.
  -     (unibyte_char_to_multibyte): Move to character.h and define as macro.
  -     (multibyte_char_to_unibyte): If C is an eight-bit character,
  -     convert it to the corresponding byte value.
  -
  -     * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
  -     not 1, signals an error.  Update the elements of
  -     unibyte_to_multibyte_table.
  -     (init_charset_once): Initialize unibyte_to_multibyte_table.
  -     (syms_of_charset): Define the charset `iso-8859-1'.
  -
  -     * cmds.c (internal_self_insert): In a multibyte buffer, insert C
  -     as is without converting it to unibyte.  In a unibyte buffer,
  -     convert C to multibyte before checking the syntax.
  -
  -     * lisp.h (unibyte_char_to_multibyte): Delete extern.
  -
  -     * minibuf.c (Fminibuffer_complete_word): Use the macro
  -     FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
  -
  -     * regex.h (struct re_pattern_buffer): New member target_multibyte.
  -
  -     * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
  -     (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte.  If
  -     that is zero, convert an eight-bit char to multibyte.
  -     (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
  -     non-emacs case.
  -     (PATFETCH): Convert an eight-bit char to multibyte.
  -     (HANDLE_UNIBYTE_RANGE): New macro.
  -     (regex_compile): Setup the compiled pattern for multibyte chars
  -     even if the given regex string is unibyte.  Use PATFETCH_RAW
  -     instead of PATFETCH in many places.  To handle `charset'
  -     specification of unibyte, call HANDLE_UNIBYTE_RANGE.  Use bitmap
  -     only for ASCII chars.
  -     (analyse_first) <exactn>: Simplify because the compiled pattern
  -     is multibyte.
  -     <charset_not>: Setup fastmap from bitmap only for ASCII chars.
  -     <charset>: Use CHAR_LEADING_CODE to get leading codes.
  -     <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
  -     (re_compile_fastmap) [emacs]: Call analyse_first with the arg
  -     multibyte always 1.
  -     (re_search_2): In emacs, set the locale variable multibyte to 1,
  -     otherwise to 0.  New local variable target_multibyte.  Check it
  -     to decide the multibyteness of STR1 and STR2.  If
  -     target_multibyte is zero, convert unibyte chars to multibyte
  -     before translating and checking fastmap.
  -     (TARGET_CHAR_AND_LENGTH): New macro.
  -     (re_match_2_internal): In emacs, set the locale variable multibyte
  -     to 1, otherwise to 0.  New local variable target_multibyte.  Check
  -     it to decide the multibyteness of STR1 and STR2.  Use
  -     TARGET_CHAR_AND_LENGTH to fetch a character from D.
  -     <charset, charset_not>: If multibyte is nonzero, check fastmap
  -     only for ASCII chars.  Call bcmp_translate with
  -     target_multibyte, not with multibyte.
  -     <begline>: Declare the local variable C as `unsigned'.
  -     (bcmp_translate): Change the last arg name to target_multibyte.
  -
  -     * search.c (compile_pattern_1): Don't adjust the multibyteness of
  -     the regexp pattern and the matching target.  Set cp->buf.multibyte
  -     to the multibyteness of the regexp pattern.  Set
  -     cp->but.target_multibyte to the multibyteness of the matching target.
  -     (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
  -     FETCH_STRING_CHAR_ADVANCE.
  -     (Freplace_match): Convert unibyte chars to multibyte.
  -
  -     * syntax.c (char_quoted, back_comment, scan_words)
  -     (Fforward_comment, scan_lists, Fbackward_prefix_chars)
  -     (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
  -     unibyte chars to multibyte.
  -     (skip_chars): Delete the arg syntaxp, and move the code for
  -     handling syntaxes to skip_syntaxes.  Change callers.
  -     Fix the case that the multibyteness of STRING and the current
  -     buffer doesn't match.
  -     (skip_syntaxes): New function.
  -     (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
  -     SINGLE_BYTE_CHAR_P.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xfaces.c (QCfontset): New variable.
  -     (LFACE_FONTSET): New macro.
  -     (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
  -     (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
  -     (Finternal_set_lisp_face_attribute)
  -     (Finternal_get_lisp_face_attribute): Handle QCfontset.
  -     (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
  -     check also LFACE_FONTSET_INDEX.
  -     (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
  -     attrs[LFACE_FONT_INDEX].
  -     (syms_of_xfaces): Intern and staticpro QCfontset.
  -
  -     * dispextern.h (enum lface_attribute_index): New member
  -     LFACE_FONTSET_INDEX.
  -
  -     * fns.c (base64_encode_1): Handle eight-bit chars correctly.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (coding_set_destination): Fix coding->destination for
  -     the case converting a region.
  -     (encode_coding_utf_8): Encode eight-bit chars as single byte.
  -     (encode_coding_object): Fix coding->dst_pos and
  -     coding->dst_pos_byte for the case converting a region.
  -
  -     * insdel.c (insert_from_gap): Make it work even if PT != GTP.
  -
  -     * character.h (BYTE8_STRING): New macro.
  -
  -     * fns.c (base64_decode_1): Insert eight-bit chars correctly.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
  -     characters by octal form.
  -
  -     * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
  -
  -     * buffer.h (_fetch_multibyte_char_len): Delete extern.
  -     (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
  -     _fetch_multibyte_char_len.
  -     (FETCH_CHAR_AS_MULTIBYTE): New macro.
  -
  -     * casetab.c (set_canon, set_identity, shuffle): Simplify.
  -
  -     * casefiddle.c (casify_object): Simplify.  Handle the case that
  -     the case conversion change the byte length.
  -     (casify_region): Likewise.
  -
  -     * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
  -
  -     * character.c (_fetch_multibyte_char_len): Delete this variable.
  -     (syms_of_character): Setup Vprintable_chars.
  -
  -     * editfns.c (Fchar_equal): Fix for the unibyte case.
  -     (Finsert_byte): New function.
  -     (syms_of_editfns): Defsubr it.
  -
  -     * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
  -     of direct code 0x3ffff.
  -
  -     * search.c (Freplace_match): Fix for the unibyte case.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * lread.c (safe_to_load_p): Fix the logic.
  -
  -     * syntax.c (scan_words): Don't treat characters belonging to
  -     different scripts as constituting a word.
  -
  -     * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
  -
  -     * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
  -
  -     * emacs.c (main): In the case of --unibyte, instead of aborting on
  -     finding non-empty buffer, make it unibyte.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
  -     to create a fontset.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * character.c (Funibyte_char_to_multibyte): Doc fix.
  -
  -     * xfns.c [HAVE_STDLIB_H]: Fix last change.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.c (fontset_add): Make the type `int'.
  -     (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
  -
  -     * character.c (unibyte_char_to_multibyte)
  -     (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
  -     charset_unibyte, not charset_primary.
  -
  -     * charset.h (charset_unibyte): Extern it instead of charset_primary.
  -
  -     * charset.c (charset_unibyte): Rename from charset_primary.
  -     (Funibyte_charset): Rename from Fprimary_charset.
  -     (Fset_unibyte_charset): Rename from Fset_primary_charset.
  -     (syms_of_charset): Adjust for the above changes.
  -
  -     * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
  -     SINGLE_BYTE_CHAR_P.  Fix the logic of handling non-ASCII char when
  -     it->multibyte_p is zero.
  -
  -     * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
  -     Delete extern.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (Fdefine_coding_system_internal): Fix category setting
  -     for a coding system of type iso-2022.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * syntax.c (Vnext_word_boundary_function_table): New variable.
  -     (next-word-boundary-function-table): Declare it as a Lisp variable
  -     in syms_of_syntax.
  -     (scan_words): Call functions in Vnext_word_boundary_function_table
  -     if any.
  -
  -     * xterm.c (x_load_font): Initialize fontp->fontset to -1.
  -
  -     * fontset.c (fs_load_font): If fontp->charset is not negative,
  -     return fontp without setting its members.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
  -
  -     * m/sparc.h (HAVE_ALLOCA): Delete.
  -
  -     * s/irix6-5.h: Don't include strings.h.
  -     (bcopy, bzero, bcmp): Don't undef.
  -
  -     * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
  -
  -     * s/usg5-4.h (NO_SIOCTL_H): Don't define.
  -     (TIOCSIGSEND): Don't test IRIX6.
  -     (bcopy, bzero, bcmp): Define conditionally.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * buffer.c (Qas, Qmake, Qto): New variables.
  -     (Fset_buffer_multibyte): New optional arg METHOD.  Change caller.
  -     (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
  -
  -     * callproc.c (Fcall_process): Don't call insert_1_both directly if
  -     we are inserting a process output into a multibyte buffer.
  -
  -     * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
  -     multibyte_char_to_unibyte.
  -
  -     * character.c (Funibyte_char_to_multibyte): If C can't be decoded
  -     by the primary charset, make it eight-bit char.
  -     (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
  -
  -     * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
  -     (charset_8_bit__control, charset_8_bit_graphic)
  -     (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
  -     (define_charset_internal): New function.
  -     (syms_of_charset): Call define_charset_internal for pre-defined
  -     charsets.
  -
  -     * charset.h (charset_8_bit): Extern it.
  -
  -     * coding.c (make_conversion_work_buffer): Adjust for the change
  -     of Fset_buffer_multibyte.
  -     (encode_coding_raw_text): Increment p0 in the loop.
  -
  -     * lisp.h (Fset_buffer_multibyte): Adjust prototype.
  -
  -     * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
  -     for the change of Fset_buffer_multibyte.
  -
  -     * fns.c (Fstring_to_multibyte): New function.
  -     (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * xfns.c (x_put_x_image): Declare args.
  -
  -     * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
  -     (try_font_list): Declare an arg.
  -
  -     * xdisp.c (message2_nolog, set_message): Declare an arg.
  -
  -     * terminfo.c (tparam): Declare an arg.  Use P_ to declare tparm.
  -
  -     * syntax.c (scan_sexps_forward): Declare an arg.
  -
  -     * scroll.c (calculate_scrolling, calculate_direct_scrolling):
  -     Declare an arg.
  -
  -     * lisp.h (Fnew_fontset): Declare.
  -
  -     * keymap.c (push_key_description): Call CHARACTERP correctly.
  -
  -     * fontset.c (fontset_add): Declare args.  Call make_number correctly.
  -     (face_for_char): Delete unused vars.
  -     (Fset_fontset_font): Doc fix.  Delete unused vars.
  -
  -     * doc.c (Fsubstitute_command_keys): Delete unused vars.
  -
  -     * composite.c (update_compositions): Declare arg.
  -
  -     * cm.c (calccost, cmgoto): Declare args.
  -
  -     * charset.c: Remove `emacs' conditional.  Doc fixes.
  -     (map_char_table_for_charset): Declare.
  -
  -     * character.c (syms_of_character) <translation-table-vector>: Doc fix.
  -
  -     * ccl.c: Remove `emacs' conditional.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     The following changes are to allow specifying multiple font
  -     patterns for a character range (specified by script or charset).
  -
  -     * Makefile.in (abbrev.o): Depend on syntax.h.
  -     (xfaces.o): Depend on charset.h.
  -
  -     * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
  -     SINGLE_BYTE_CHAR_P.
  -
  -     * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
  -
  -     * character.h (Vchar_script_table): Extern it.
  -
  -     * character.c (Vscript_alist): Delete.
  -     (Vchar_script_table, Qchar_script_table): New variable.
  -     (syms_of_character): Declare Vchar_script_table as a lisp variable
  -     and initialize it.
  -
  -     * chartab.c (Fmake_char_table): Doc fix.  If PURPOSE doesn't
  -     have property char-table-extra-slots, make no extra slot.
  -
  -     * dispextern.h (struct face): Delete member `charset'.
  -     (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
  -     SINGLE_BYTE_CHAR_P.
  -     (choose_face_font, lookup_non_ascii_face, font_name_registry):
  -     Add prototypes.
  -     (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
  -     (generate_ascii_font_name): Rename from generate_ascii_font.
  -
  -     * fontset.h (get_font_repertory_func): New prototype.
  -     (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
  -     (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
  -
  -     * fontset.c (Qprepend, Qappend): New variables.
  -     (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
  -     (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
  -     (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
  -     (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
  -     (fontset_ref_and_range, fontset_add, reorder_font_vector)
  -     (load_font_get_repertory): New functions.
  -     (fontset_set): Delete.
  -     (fontset_face): New arg FACE.  Return face ID, not face.
  -     Complete re-write to handle new fontset structure.  Change caller.
  -     (free_face_fontset): Use ASET istead of AREF (X) = Y.
  -     (face_for_char): Don't call lookup_face.
  -     (make_fontset_for_ascii_face): New arg FACE.
  -     (fs_load_font): New arg CHARSET_ID.  Don't check
  -     Vfont_encoding_alist here.
  -     (find_font_encoding): New function.
  -     (list_fontsets): Use STRINGP, not ! NILP.
  -     (accumulate_script_ranges): New function.
  -     (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
  -     re-written to handle new fontset structure.
  -     (Ffontset_font): Return a copy of element.
  -     (syms_of_fontset): Define symbols Qprepend and Qappend.  Fix
  -     docstring of font-encoding-alist.
  -
  -     * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
  -     (Fset_fotset_font): Fix arguments to 5.
  -
  -     * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
  -
  -     * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
  -     Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
  -     (highlight_trailing_whitespace): Adjust for the change of
  -     lookup_named_face.
  -
  -     * xfaces.c: Include charset.h.
  -     (load_face_font): Delete argument C.  Change caller.
  -     (generate_ascii_font_name): Rename from generate_ascii_font.
  -     (font_name_registry): New function.
  -     (cache_face): Store ascii faces before non-ascii faces in buckets.
  -     (lookup_face): Delete arguments C and BASE_FACE.  Change caller.
  -     Lookup only ascii faces.
  -     (lookup_non_ascii_face): New function.
  -     (lookup_named_face): Delete argument C.  Change caller.
  -     (lookup_derived_face): Delete argument C.  Change caller.
  -     (try_font_list): New arg PATTERN.  Change caller.  If PATTERN is
  -     a string, just call font_list with it.
  -     (choose_face_font): Delete arguments FACE and C.  New arg
  -     FONT_SPEC.  Change caller.
  -     (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
  -     Change caller.
  -     (realize_non_ascii_face): New function.
  -     (realize_x_face): Call load_face_font here.
  -     (realize_tty_face): Delete argument C.  Change caller.
  -     (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
  -     get a face ID.
  -     (dump_realized_face): Don't print charset of FACE.
  -
  -     * xfns.c (x_set_font): Always call x_new_fontset and
  -     store_frame_parameter.
  -     (Fx_create_frame): Call x_new_fontset, not x_new_font.
  -     (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
  -
  -     * xterm.h (x_get_font_repertory): Extern it.
  -
  -     * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
  -     SINGLE_BYTE_CHAR_P.  Fix the logic of handling non-ASCII char when
  -     it->multibyte_p is zero.
  -     (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
  -     (x_new_fontset): If FONTSETNAME doesn't match any existing
  -     fontsets, create a new one.
  -     (x_get_font_repertory): New function.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (Ffind_coding_systems_region_internal): Detect an
  -     ASCII only string correctly.
  -
  -     * lread.c (Fload): Don't load with Qload_force_doc_strings t if
  -     version is 0.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * lread.c: Include "coding.h".
  -     (Qget_emacs_mule_file_char, Qload_force_doc_strings)
  -     (load_each_byte, unread_char): New variables.
  -     (readchar_backlog): Delete.
  -     (readchar): Return a character unless load_each_byte is nonzero.
  -     Handle the case that readcharfun is Qget_emacs_mule_file_char or a
  -     cons.  If unread_char is not -1, simply return it.
  -     (unreadchar): Handle the case that readcharfun is
  -     Qget_emacs_mule_file_char or a cons.  Set unread_char if necessary.
  -     (read_multibyte): Delete.
  -     (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
  -     (read_emacs_mule_char): New functions.
  -     (Fload): Even if the file doesn't have the extension ".elc", if
  -     safe_to_load_p returns a positive version number, assume that the
  -     file contains bytecompiled code.  If the version is less than 22,
  -     load the file while decoding multibyte sequences by emacs-mule.
  -     (readevalloop): Don't use readchar_backlog.
  -     (Fread): Likewise.  Pay attention to the case that STREAM is a cons.
  -     (Fread_from_string): Pay attention to the case that STREAM is a cons.
  -     (read_escape): Delete the arg BYTEREP.
  -     (read1): Set load_each_byte to 1 temporarily while handling
  -     #@NUMBER.  Don't call read_multibyte.
  -     (read_vector): Call Fread with a cons.  If readcharfun is
  -     Qget_emacs_mule_file_char, decode the read string by emacs-mule.
  -     (read_list): If doc_reference is 2, make the cdr part string as unibyte.
  -     (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
  -     and Qload_force_doc_strings.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xdisp.c (face_before_or_after_it_pos): Call
  -     FETCH_MULTIBYTE_CHAR with byte postion, not char position.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * character.h (TRAILING_CODE_P): New macro.
  -     (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
  -     (string_char_with_unification): Fix prototype.
  -     (Vscript_alist): Extern it.
  -
  -     * character.c (Vscript_alist): New variable.
  -     (string_char_with_unification, str_as_unibyte)
  -     (string_escape_byte8): Add `const' to local variables.
  -     (syms_of_character): Declare script-alist as a Lisp variable.
  -
  -     * charset.h (Vcharset_ordered_list): Extern it.
  -     (charset_ordered_list_tick): Extern it.
  -     (EMACS_MULE_LEADING_CODE_PRIVATE_11)
  -     (EMACS_MULE_LEADING_CODE_PRIVATE_12)
  -     (EMACS_MULE_LEADING_CODE_PRIVATE_21)
  -     (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
  -     (Funify_charset): Adjust for the change of Funify_charset.
  -
  -     * charset.c (charset_ordered_list_tick): New variable.
  -     (Fdefine_charset_internal): Increment charset_ordered_list_tick.
  -     (Funify_charset): New optional arg DEUNIFY.  If it is non-nil,
  -     deunify intead of unify a charset.
  -     (string_xstring_p): Add `const' to local variables.
  -     (find_charsets_in_text): Add `const' to arguments and local variables.
  -     (encode_char): Adjust for the change of Funify_charset.  Fix
  -     detecting of invalid code.
  -     (Fset_charset_priority): Increment charset_ordered_list_tick.
  -     (Fmap_charset_chars): Fix handling of default value for FROM_CODE
  -     and TO_CODE.
  -
  -     * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
  -     (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
  -     Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
  -     (decode_coding_ccl, consume_chars)
  -     (Ffind_coding_systems_region_internal)
  -     (Fcheck_coding_systems_region): Add `const' to local variables.
  -
  -     * print.c (print_object): Use octal form for printing the
  -     contents of a bool vector.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
  -     <version == 20>: Refuse to load.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * fns.c: Move coding.h.
  -     (Qcodeset, Qdays, Qmonths): New.
  -     (concat): Use CHARACTERP instead of INTEGERP.
  -     (Flocale_codeset): Delete.
  -     (Flanginfo): New function.
  -     (syms_of_fns): Change accordingly.
  -
  -     * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * casetab.c (init_casetab_once, init_casetab_once): Fix
  -     CHAR_TABLE_SET call.
  -
  -     * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
  -
  -     * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
  -
  -     * charset.c (Fmap_charset_chars): Check args.  Convert Lisp types.
  -     (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
  -     (Fset_charset_priority, syms_of_charset): Convert Lisp types.
  -
  -     * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
  -
  -     * coding.c (ENCODE_DESIGNATION, decode_eol)
  -     (make_conversion_work_buffer, code_conversion_restore)
  -     (Fdefine_coding_system_internal): Convert Lisp types.
  -     (code_conversion_restore): Use EQ, not ==.
  -     (Fencode_coding_string): Fix code_convert_string call.
  -
  -     * coding.h (code_convert_region): Fix prototype.
  -
  -     * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
  -
  -     * fontset.c (fontset_ref, fontset_set, fs_load_font)
  -     (Ffontset_info): Convert Lisp types.
  -
  -     * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
  -
  -     * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
  -
  -     * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
  -
  -     * chartab.c: Include "...h", not <...h> in some cases.
  -
  -     * callproc.c (Fcall_process): Remove unused variables.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * coding.c (Fset_coding_system_priority): Allow null arg list.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * minibuf.c (Fminibuffer_complete_word): Remove unused var.
  -     (Fself_insert_and_exit): Use CHARACTERP.
  -
  -     * callproc.c (Fcall_process): Remove unused vars.
  -
  -     * xterm.c (XTread_socket): Add extra dead keysyms.
  -
  -     * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
  -
  -     * dispextern.h: Remove prototypes for redraw_frame,
  -     redraw_garbaged_frames.
  -
  -     * cmds.c (Fself_insert_command): Use CHARACTERP.
  -
  -     * chartab.c (make_sub_char_table): Remove unused var.
  -     (Fset_char_table_default, Fmap_char_table): Doc fix.
  -
  -     * keymap.c (access_keymap): Remove generic char code.
  -     (push_key_description): Use CHARACTERP.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * charset.c: Doc fixes.
  -     (Funify_charset): Extra checking.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * lread.c: Remove some unused variables.
  -     (safe_to_load_p): If safe, return the magic number version byte.
  -     (Fload): Maybe use load-with-code-conversion.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * category.c (Fmodify_category_entry): Don't modify the contents
  -     of category_set for characters out of the range.  Avoid
  -     unnecessary modification.
  -
  -     * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
  -     Vchar_unify_table.  The default value of the table is now nil.
  -
  -     * character.c (syms_of_character): Setup Vchar_width_table for
  -     eight-bit-control and raw-byte chars.
  -
  -     * charset.h (enum define_charset_arg_index): Delete
  -     charset_arg_parents and add charset_arg_subset and
  -     charset_arg_superset.
  -     (enum charset_attr_index): Delete charset_parents and add
  -     charset_subset and charset_superset.
  -     (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
  -     CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
  -     (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
  -     (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
  -     (CHARSET_SUPERSET): New macros.
  -     (charset_work): Extern it.
  -     (ENCODE_CHAR): Use charset_work.
  -     (CHAR_CHARSET_P): Adjust for the change of encoder format.
  -     (map_charset_chars): Extern it.
  -
  -     * charset.c (load_charset_map): Set the default value of encoder
  -     and deunifier char-tables to nil.
  -     (map_charset_chars): Change argument.  Change callers.  Use
  -     map_char_table_for_charset instead of map_char_table.
  -     (Fmap_charset_chars): New optional args from_code and to_code.
  -     (Fdefine_charset_internal): Adjust for the change of
  -     `define-charset' (:parents -> :subset or :superset).
  -     (charset_work): New variable.
  -     (encode_char, syms_of_charset): Adjust for the change of
  -     Fdefine_charset_internal.
  -     (Ffind_charset_string): Setup the vector `charsets' correctly.
  -
  -     * chartab.c (sub_char_table_ref_and_range): New arg default.  Fix
  -     the previous change.
  -     (char_table_ref_and_range): Adjust for the above change.
  -     (map_sub_char_table_for_charset): New function.
  -     (map_char_table_for_charset): New function.
  -
  -     * keymap.c (describe_vector): Handle a char-table directly here.
  -     (describe_char_table): Delete.
  -
  -     * lisp.h (map_charset_chars): Delete.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * fns.c (count_combining): Comment out (unused).
  -     (Flocale_codeset): New.
  -     (syms_of_fns): Defsubr it.
  -
  -     * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
  -     (size_t): Remove.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * Makefile.in (chartab.o): Depend on charset.h.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * character.c (syms_of_character): Set the default value of
  -     Vprintable_chars to Qnil.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * charset.c (load_charset_map): Handle the case that from < to
  -     correctly.
  -
  -     * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
  -     (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
  -     Pay attention to raw-8-bit chars.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
  -     It is not bytecompiled now.
  -
  -     * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
  -     (charset_jisx0208): New variables.
  -     (Fdefine_charset_internal): Setup them if appropriate.
  -     (init_charset_once): Initialize them to -1.
  -
  -     * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
  -     (charset_jisx0208): Extern them.
  -
  -     * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
  -     (CODING_ISO_FLAG_USE_OLDJIS): New macro.
  -     (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
  -     (setup_iso_safe_charsets): Fix arguments to Fassq.
  -     (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
  -     (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
  -     CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
  -     (encode_coding_iso_2022): Change the 1st arg to
  -     ENCODE_ISO_CHARACTER to a variable.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * charset.h (enum define_charset_arg_index): New enums
  -     charset_arg_min_code and charset_arg_max_code.
  -     (struct charset): New member char_index_offset.
  -
  -     * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
  -     Take charset->char_index_offset into account.
  -     (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
  -     args[charset_arg_max_code].  Setup charset.char_index_offset.
  -     (syms_of_charset): Fix args to Fdefine_charset_internal.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * coding.c (decode_coding_utf_8): Reject overlong sequences.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * coding.c: Doc fixes.
  -     (Fcoding_system_aliases): Fix return value.
  -     (Qmac): Remove (duplicated) definition.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * charset.c (Fcharset_priority_list, Fset_charset_priority):
  -     New functions.
  -
  -     * character.c (Fstring): Doc fix.
  -
  -     * charset.c (Fdefine_charset_alias): Update Vcharset_list.
  -
  -     * fontset.c (Ffontset_info): Doc fix.  Return charset names, not ids.
  -     (font-encoding-alist): Doc fix.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * term.c (costs_set): Declare static, non-initialized for pcc.
  -     (encode_terminal_code): Remove unused var.
  -
  -     * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
  -     for K&R.
  -
  -     * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
  -
  -     * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
  -     (suffixes): Move out of make_subsidiaries for K&R.
  -
  -     * charset.c (map_charset_chars): Fix c_function declaration for K&R.
  -
  -     * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * data.c (Fchar_or_string_p): Doc fix.  Use CHARACTERP.
  -
  -     * category.c (Fmodify_category_entry): Doc fix.  Remove unused vars.
  -
  -2008-02-01  Yong Lu  <lyongu@asia-infonet.com>
  -
  -     * charset.c (Fdefine_charset_internal): Fix argument to bzero.
  -
  -     * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
  -     vietnamese.elc to vietnamese.el.  They are not bytecompiled now.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (decode_coding_charset): Adjust for the change of
  -     Fdefine_coding_system_internal.
  -     (Fdefine_coding_system_internal): For a coding system of
  -     `charset' type, store a list of charset IDs in
  -     `charset_attr_charset_valids' element of coding attributes.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
  -     (emacs_mule_char): New arg src.  Delete arg `composition'.  Change
  -     caller.  Handle 2-byte and 3-byte charsets correctly.
  -     (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
  -     DECODE_EMACS_MULE_COMPOSITION_RULE.  Change caller.
  -     (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
  -     (DECODE_EMACS_MULE_21_COMPOSITION): Call
  -     DECODE_EMACS_MULE_COMPOSITION_RULE_21.  Produce correct annotation
  -     sequence.
  -     (decode_coding_emacs_mule): Handle composition correctly.  Rewind
  -     `src' and `consumed_chars' correctly before calling emacs_mule_char.
  -     (DECODE_COMPOSITION_START): Correctly handle the case of altchar
  -     and alt&rule composition.
  -     (decode_coding_iso_2022): Handle composition correctly.
  -     (init_coding_once): Setup emacs_mule_bytes for private charsets.
  -
  -     * charset.c (Fdefine_charset_internal): Fix bug for the case of
  -     re-defining a charset.  If the charset has :emacs-mule-id, setup
  -     emacs_mule_bytes.
  -     (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * coding.c (encode_coding_iso_2022, encode_coding_sjis)
  -     (encode_coding_big5, encode_coding_charset): If coding requires safe
  -     encoding, produce a character specified by
  -     CODING_INHIBIT_CHARACTER_SUBSTITUTION.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * xterm.c (XSetIMValues): Declare.
  -
  -     * process.c: Conditionally include sys/wait.h, pty.h.
  -
  -     * print.c (print_object): Fix print format for 64-bit systems.
  -
  -     * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
  -
  -     * buffer.c (emacs_strerror): Declare.
  -
  -     * fontset.c (Fclear_face_cache): Declare.
  -     (accumulate_font_info): Comment-out (unused).
  -     (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
  -     variables.
  -
  -     * character.h (string_escape_byte8): Declare.
  -
  -     * charset.c (load_charset_map, load_charset_map_from_file): Remove
  -     unused vars.
  -     (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
  -     (Fmap_charset_chars): Doc fix.
  -
  -     * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
  -     (Fset_coding_system_priority, Fset_coding_system_priority)
  -     (Fdefine_coding_system_internal): Doc fix.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * character.c (string_escape_byte8): Make multibyte string with
  -     correct size.
  -
  -     * charset.c (Fmake_char): Delete unnecessary code.
  -
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  -
  -     * xfns.c (x_encode_text): Allocate coding.destination here, and
  -     call encode_coding_object with dst_object Qnil.
  -
  -     * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
  -     multibyte form correctly.
  -
  -     * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
  -     against Vfont_encoding_alist.
  -
  -     * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF).  Fix the
  -     handling of charset list.
  -     (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
  -     (decode_coding_object): Move point to coding->dst_pos before
  -     calling post-read-conversion function.
  -     (encode_coding_object): Give correct arguments to
  -     pre-write-conversion.  Ignore the return value of
  -     pre-write-conversion function.  Pay attention to the case that
  -     pre-write-conversion changes the current buffer.  If dst_object is
  -     Qt, even if coding->src_bytes is zero, allocate at least one byte
  -     to coding->destination.
  -
  -     * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
  -
  -     * charset.c (Fmake_char): Make it more backward compatible.
  -     (Fmap_charset_chars): Fix docstring.
  -
  -2008-02-01  Dave Love  <fx@gnu.org>
  -
  -     * coding.c: Doc fixes.
  -     (Fdefine_coding_system_alias): Use names, not symbols, in
  -     coding-system-alist.
  +     * xterm.c (x_draw_composite_glyph_string_foreground):
  +     * w32term.c (x_draw_composite_glyph_string_foreground):
  +     * term.c (encode_terminal_code):
  +     * composite.c (composition_update_it, get_composition_id):
  +     * xdisp.c (get_next_display_element)
  +     (fill_composite_glyph_string): Add comments about special meaning
  +     of TAB characters in a composition.
   
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  +2011-09-15  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
  -     of calling free_realized_face.
  +     * editfns.c (Fformat): Fix off-by-1 bug for "%%b" (Bug#9514).
  +     This occurs when processing a multibyte format.
  +     Problem reported by Wolfgang Jenker.
   
  -2008-02-01  Yong Lu  <lyongu@asia-infonet.com>
  +2011-09-15  Johan Bockgård  <bojohan@gnu.org>
   
  -     * charset.c (read_hex): Don't treat SPC as a comment starter.
  -     (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
  -     (Fdecode_char): Fix typo.
  +     * xdisp.c (try_cursor_movement): Only check for exact match if
  +     cursor hpos found by set_cursor_from_row is valid.  (Bug#9495)
   
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  +2011-09-14  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * charset.h (struct charset): New member `code_space_mask'.
  +     Remove unused external symbols.
  +     * dispextern.h (calc_pixel_width_or_height): Remove decl.
  +     * xdisp.c (calc_pixel_width_or_height): Now static.
  +     * doprnt.c (exprintf) [! (HAVE_X_WINDOWS && USE_X_TOOLKIT)]: Remove.
  +     * indent.c (check_display_width):
  +     * w32term.c: Fix comment to match code.
  +     * xterm.c, xterm.h (x_catching_errors): Remove.
   
  -     * coding.c (coding_set_source): Delete the local variable beg_byte.
  -     (encode_coding_charset, Fdefine_coding_system_internal):
  -     Delete the local variable charset.
  -     (Fdefine_coding_system_internal): Setup
  -     attrs[coding_attr_charset_valids] correctly.
  +2011-09-14  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
  -     member to check if CODE is valid or not.
  -     (Fdefine_charset_internal): Initialize `code_space_mask' member.
  -     (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
  -     is within the range of charset->min_code and carset->max_code.
  +     * xselect.c: Use signed conversions more consistently (Bug#9498).
  +     (selection_data_to_lisp_data): Assume incoming selection data are
  +     signed integers, not unsigned.  This is to be consistent with
  +     outgoing selection data, which was modified to use signed integers
  +     in as part of the fix to Bug#9196 in response to Jan D.'s comment
  +     in <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=9196#32> that X11
  +     expects long, not unsigned long.
   
  -2008-02-01  Dave Love  <fx@gnu.org>
  +2011-09-14  Eli Zaretskii  <eliz@gnu.org>
   
  -     * syntax.h (syntax_temp) [!__GNUC__]: Declare.
  +     * xdisp.c (try_window_reusing_current_matrix): Fix incorrect
  +     computation of loop end.  Reported by Johan Bockgård
  +     <bojohan@gnu.org>.
   
  -     * dispextern.h (generate_ascii_font): Fix return type.
  +2011-09-13  Chong Yidong  <cyd@stupidchicken.com>
   
  -     * xfaces.c (generate_ascii_font): Fix arg declaration.
  +     * frame.c (Fother_visible_frames_p): Function deleted.
   
  -     * coding.c (coding_inherit_eol_type)
  -     (Fset_terminal_coding_system_internal)
  -     (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
  +2011-09-12  Eli Zaretskii  <eliz@gnu.org>
   
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  +     * indent.c (compute_motion): Process display vector front to back
  +     rather than the other way around.  (Bug#2496)
   
  -     * coding.c (decode_coding_charset, encode_coding_charset): Handle
  -     multiple charsets correctly.
  +2011-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
   
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  +     * fileio.c (Finsert_file_contents): Don't assume beg_offset is 0.
   
  -     * search.c (boyer_moore): Fix handling of multibyte character
  -     translation.
  +2011-09-11  Chong Yidong  <cyd@stupidchicken.com>
   
  -     * xdisp.c (display_mode_element): When the variable `elt' is
  -     changed, update `this' and `lisp_string'.
  +     * minibuf.c (Fread_from_minibuffer): Doc fix.
   
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  +2011-09-11  Eli Zaretskii  <eliz@gnu.org>
   
  -     * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
  +     * xdisp.c (produce_stretch_glyph): Fix a typo made in changes from
  +     2011-08-30T17:32:44Z!eliz@gnu.org.  (Bug#9475)
   
  -     * callproc.c (Fcall_process): Be sure to give the current buffer
  -     to decode_coding_c_string.  Update PT and PT_BYTE after the insertion.
  +2011-09-11  Lars Magne Ingebrigtsen  <larsi@gnus.org>
   
  -     * charset.c (struct charset_map_entries): New struct.
  -     (load_charset_map): Rename from parse_charset_map.  New args
  -     entries and n_entries.  Change caller.
  -     (load_charset_map_from_file): Rename from load_charset_map.
  -     Change caller.  New arg control_flag.  Call load_charset_map at
  -     the tail.
  -     (load_charset_map_from_vector): New function.
  -     (Fdefine_charset_internal): Setup charset.compact_codes_p.
  -     (encode_char): If the charset is compact, change a character index
  -     to a code point.
  +     * fileio.c (Fvisited_file_modtime): Document `(-1 65535)' as a
  +     value for non-existent files.
   
  -     * coding.c (coding_alloc_by_making_gap): Check the case that the
  -     source and destination are the same correctly.
  -     (decode_coding_raw_text): Set coding->consumed_char and
  -     coding->consumed to 0.
  -     (produce_chars): If coding->chars_at_source is nonzero, update
  -     coding->consumed_char and coding->consumed before calling
  -     alloc_destination.
  -     (Fdefine_coding_system_alias): Register ALIAS in
  -     Vcoding_system_alist.
  -     (syms_of_coding): Define `no-conversion' coding system at the tail.
  +2011-09-11  Eli Zaretskii  <eliz@gnu.org>
   
  -     * fileio.c (Finsert_file_contents): Set coding_system instead of
  -     val.  If the current buffer is multibyte, always call
  -     decode_coding_gap.
  +     * fileio.c (Finsert_file_contents): If the file cannot be opened,
  +     set its "size" to -1.  This will set the modtime_size field of
  +     the corresponding buffer to -1, which is what
  +     verify-visited-file-modtime expects for files that do not exist.
  +     (Bug#9139)
   
  -     * xfaces.c (try_font_list): Give higher priority to fontset's
  -     family than face's family.
  +2011-09-11  Paul Eggert  <eggert@cs.ucla.edu>
   
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  +     * keymap.h (KEY_DESCRIPTION_SIZE, push_key_description): Move decls
  +     here ...
  +     * lisp.h: ... from here.  push_key_description is no longer
  +     defined in keyboard.c, so its declaration should not be in
  +     lisp.h's "Defined in keyboard.c" section, and KEY_DESCRIPTION_SIZE
  +     logically belongs with push_key_description.
   
  -     * callproc.c (Fcall_process): Be sure to give the current buffer
  -     to decode_coding_c_string.
  +2011-09-10  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * xfaces.c (try_font_list): Give a family specified in a fontset
  -     higher priority than a family specified in a face.
  +     * buffer.h: Include <sys/types.h> instead of <time.h>.
  +     Otherwise, off_t wasn't defined on FreeBSD 9.0-BETA2 i386.
  +     Problem reported by Herbert J. Skuhra.
   
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  +2011-09-10  Lars Magne Ingebrigtsen  <larsi@gnus.org>
   
  -     * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
  -     Fix arguments to insert_from_buffer.
  +     * xml.c (parse_region): Make the parsing work for
  +     non-comment-starting XML files again (bug#9144).
   
  -     * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
  +2011-09-10  Andreas Schwab  <schwab@linux-m68k.org>
   
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  +     * image.c (gif_load): Fix calculation of bottom and right corner.
  +     (Bug#9468)
   
  -     * coding.c (produce_chars): Set the variable `multibytep' correctly.
  -     (decode_coding_gap): Set coding->dst_multibyte correctly.
  +2011-09-10  Eli Zaretskii  <eliz@gnu.org>
   
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  +     * xdisp.c (MAX_DISP_SCAN): Decrease to 250.  Prevents sluggish
  +     redisplay in small windows.
   
  -     * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
  -     (decode_coding_utf_16): Fix converting high and low bytes to code-point.
  -     (encode_coding_utf_16): Substitute coding->default_char for
  -     non-Unicode characters.
  -     (decode_coding): Don't call record_insert here.
  -     (setup_coding_system): Initialize `surrogate' of
  -     coding->spec.utf_16 to 0.
  -     (EMIT_ONE_BYTE): Fix for multibyte case.
  +2011-09-09  Eli Zaretskii  <eliz@gnu.org>
   
  -     * insdel.c (insert_from_gap): Call record_insert.
  +     * frame.c (x_report_frame_params): Cast to avoid compiler warnings.
   
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  +2011-09-08  Martin Rudalics  <rudalics@gmx.at>
   
  -     * casefiddle.c (casify_region): Fix multibyte case.
  +     * window.c (Fset_window_prev_buffers, Fset_window_next_buffers):
  +     Operate on live windows only.
   
  -     * character.c (c_string_width): Add return type `int'.
  -     (char_string_with_unification): Delete arg ADVANCED.
  +2011-09-08  Juanma Barranquero  <lekktu@gmail.com>
   
  -     * character.h (CHAR_VALID_P): Don't call CHARACTERP.
  -     (CHAR_STRING): Adjust for the change of char_string_with_unification.
  -     (CHAR_STRING_ADVANCE): Make it do-while statement.
  +     * emacs.c (my_heap_start): #ifdef to avoid warnings when unused.
   
  -     * chartab.c (sub_char_table_set_range): Optimize for the case
  -     DEPTH == 3.  Add workaround code for a GCC optimization bug.
  +2011-09-07  Eli Zaretskii  <eliz@gnu.org>
   
  -     * charset.c (parse_charset_map): Remove an unused variable.
  +     * xdisp.c (move_it_in_display_line_to): Call RESTORE_IT on ppos_it
  +     only under bidi iteration.
   
  -     * coding.c: Delete unused variables.
  +2011-09-07  Jan Djärv  <jan.h.d@swipnet.se>
   
  -     * fileio.c (Finsert_file_contents): Set coding_system to Qnil
  -     earlier.  If inserted is zero and the coding system doesn't
  -     require flushing, don't call decode_coding_gap.
  +     * gtkutil.c (xg_make_tool_item): Insert comment about eventbox.
   
  -     * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
  +2011-09-06  Paul Eggert  <eggert@cs.ucla.edu>
   
  -2008-02-01  Kenichi Handa  <handa@m17n.org>
  +     isnan: Fix porting problem to Solaris 10 with bundled gcc.
  +     Without this fix, the command to link temacs failed due to an
  +     undefined symbol __builtin_isnan.  This is because
  +     /usr/include/iso/math_c99.h #defines isnan(x) to
  +     __builtin_isnan(x), but the bundled gcc, which identifies itself
  +     as gcc 3.4.3 (csl-sol210-3_4-branch+sol_rpath), does not have
  +     a __builtin_isnan.
  +     * floatfns.c (isnan): #undef, and then #define to a clone of
  +     what's in data.c.
  +     (Fisnan): Always define, since it's always available now.
  +     (syms_of_floatfns): Always define isnan at the Lisp level.
   
  -     The following changes are for using Unicode as an internal
  -     character model, and use UTF-8 format for buffer/string
  -     representation.
  +2011-09-06  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * .gdbinit (xchartable): Adjust for the change of char table structure.
  -     (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
  +     * Makefile.in (gl-stamp): move-if-change now in build-aux (Bug#9169).
   
  -     * Makefile.in (obj): Add character.o and chartab.o.
  -     (lisp, shortlisp): Remove utf-8.elc.
  -     (*.o): For many files, change dependency on charset.h to
  -     character.h, and add dependency on character.h.
  -     (character.o, chartab.o): New targets.
  +2011-09-06  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
  -     * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
  -     * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
  -     of "charset.h".
  +     * fileio.c: Fix bugs with large file offsets (Bug#9428).
  +     The previous code assumed that file offsets (off_t values) fit in
  +     EMACS_INT variables, which is not true on typical 32-bit hosts.
  +     The code messed up by falsely reporting buffer overflow in cases
  +     such as (insert-file-contents "big" nil 1 2) into an empty buffer
  +     when "big" contains more than 2**29 bytes, even though this
  +     inserts just one byte and does not overflow the buffer.
  +     (Finsert_file_contents): Store file offsets as off_t
  +     values, not as EMACS_INT values.  Check for overflow when
  +     converting between EMACS_INT and off_t.  When checking for
  +     buffer overflow or for overlap, take the offsets into account.
  +     Don't use EMACS_INT for small values where int suffices.
  +     When checking for overlap, fix a typo: ZV was used where
  +     ZV_BYTE was intended.
  +     (Fwrite_region): Don't assume off_t fits into 'long'.
  +     * buffer.h (struct buffer.modtime_size): Now off_t, not EMACS_INT.
   
  -     * dired.c, filelock.c: Include "character.h".
  +2011-09-05  Michael Albinus  <michael.albinus@gmx.de>
   
  -     * alloc.c: Include "character.h" instead of "charset.h".
  -     (Fmake_char_table, make_sub_char_table): Move to chartab.c.
  -     (syms_of_alloc): Remove defsubr for Smake_char_table.
  +     * dbusbind.c (xd_signature_cat): Rename from signature_cat.
   
  -     * buffer.c: Include "character.h" instead of "charset.h", don't
  -     include "coding.h".
  -     (Fset_buffer_multibyte): Adjust for UTF-8.
  +2011-09-04  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * buffer.h: EXFUN Fbuffer_live_p.
  +     sprintf-related integer and memory overflow issues (Bug#9412).
   
  -     * callproc.c: Include "character.h" instead of "charset.h".
  -     (Fcall_process): Big change for the new code-conversion APIs.
  +     * doprnt.c (doprnt): Support printing ptrdiff_t and intmax_t values.
  +     (esprintf, exprintf, evxprintf): New functions.
  +     * keyboard.c (command_loop_level): Now EMACS_INT, not int.
  +     (cmd_error): kbd macro iterations count is now EMACS_INT, not int.
  +     (modify_event_symbol): Do not assume that the length of
  +     name_alist_or_stem is safe to alloca and fits in int.
  +     (Fexecute_extended_command): Likewise for function name and binding.
  +     (Frecursion_depth): Wrap around reliably on integer overflow.
  +     * keymap.c (push_key_description): First arg is now EMACS_INT, not int,
  +     since some callers pass EMACS_INT values.
  +     (Fsingle_key_description): Don't crash if symbol name contains more
  +     than MAX_ALLOCA bytes.
  +     * minibuf.c (minibuf_level): Now EMACS_INT, not int.
  +     (get_minibuffer): Arg is now EMACS_INT, not int.
  +     * lisp.h (get_minibuffer, push_key_description): Reflect API changes.
  +     (esprintf, exprintf, evxprintf): New decls.
  +     * window.h (command_loop_level, minibuf_level): Reflect API changes.
   
  -     * casetab.c: Include "character.h" instead of "charset.h".
  -     (set_canon, set_identity, shuffle): Adjust for the new
  -     map_char_table spec.
  -     (init_casetab_once): Call CHAR_TABLE_SET instead of directly
  -     accessing the char table structure.
  +     * dbusbind.c (signature_cat): New function.
  +     (xd_signature, Fdbus_register_signal):
  +     Do not overrun buffer; instead, report string overflow.
   
  -     * chartab.c: New file that implements char table.
  +     * dispnew.c (add_window_display_history): Don't overrun buffer.
  +     Truncate instead; this is OK since it's just a log.
   
  -     * category.c: Include "character.h".
  -     (copy_category_entry): New function.
  -     (copy_category_table): Call map_char_table and copy_category_entry.
  -     (Fmake_category_table): Initialize all top-level slots.
  -     (char_category_set): New function.
  -     (modify_lower_category_set): Delete.
  -     (Fmodify_category_entry): Call char_table_ref_and_range.
  +     * editfns.c (Fcurrent_time_zone): Don't overrun buffer
  +     even if the time zone offset is outlandishly large.
  +     Don't mishandle offset == INT_MIN.
   
  -     * category.h (CATEGORY_SET): Just call char_category_set.
  +     * emacs.c (main) [NS_IMPL_COCOA]: Don't overrun buffer
  +     when creating daemon; the previous buffer-overflow check was incorrect.
  +
  +     * eval.c (verror): Simplify by rewriting in terms of evxprintf,
  +     which has the guts of the old verror function.
  +
  +     * filelock.c (lock_file_1, lock_file): Don't blindly alloca long name;
  +     use SAFE_ALLOCA instead.  Use esprintf to avoid int-overflow issues.
  +
  +     * font.c: Include <float.h>, for DBL_MAX_10_EXP.
  +     (font_unparse_xlfd): Don't blindly alloca long strings.
  +     Don't assume XINT result fits in int, or that XFLOAT_DATA * 10
  +     fits in int, when using sprintf.  Use single snprintf to count
  +     length of string rather than counting it via multiple sprintfs;
  +     that's simpler and more reliable.
  +     (font_unparse_fcname): Use it to avoid sprintf buffer overrun.
  +     (generate_otf_features) [0 && HAVE_LIBOTF]: Use esprintf, not
  +     sprintf, in case result does not fit in int.
  +
  +     * fontset.c (num_auto_fontsets): Now printmax_t, not int.
  +     (fontset_from_font): Print it.
  +
  +     * frame.c (tty_frame_count): Now printmax_t, not int.
  +     (make_terminal_frame, set_term_frame_name): Print it.
  +     (x_report_frame_params): In X, window IDs are unsigned long,
  +     not signed long, so print them as unsigned.
  +     (validate_x_resource_name): Check for implausibly long names,
  +     and don't assume name length fits in 'int'.
  +     (x_get_resource_string): Don't blindly alloca invocation name;
  +     use SAFE_ALLOCA.  Use esprintf, not sprintf, in case result does
  +     not fit in int.
  +
  +     * gtkutil.c: Include <float.h>, for DBL_MAX_10_EXP.
  +     (xg_check_special_colors, xg_set_geometry):
  +     Make sprintf buffers a bit bigger, to avoid potential buffer overrun.
  +
  +     * lread.c (dir_warning): Don't blindly alloca buffer; use SAFE_ALLOCA.
  +     Use esprintf, not sprintf, in case result does not fit in int.
  +
  +     * macros.c (executing_kbd_macro_iterations): Now EMACS_INT, not int.
  +     (Fend_kbd_macro): Don't mishandle MOST_NEGATIVE_FIXNUM by treating
  +     it as a large positive number.
  +     (Fexecute_kbd_macro): Don't assume repeat count fits in int.
  +     * macros.h (executing_kbd_macro_iterations): Now EMACS_INT, not int.
  +
  +     * nsterm.m ((NSSize)windowWillResize): Use esprintf, not sprintf,
  +     in case result does not fit in int.
  +
  +     * print.c (float_to_string): Detect width overflow more reliably.
  +     (print_object): Make sprintf buffer a bit bigger, to avoid potential
  +     buffer overrun.  Don't assume list length fits in 'int'.  Treat
  +     print length of 0 as 0, not as infinity; to be consistent with other
  +     uses of print length in this function.  Don't overflow print length
  +     index.  Don't assume hash table size fits in 'long', or that
  +     vectorlike size fits in 'unsigned long'.
  +
  +     * process.c (make_process): Use printmax_t, not int, to format
  +     process-name gensyms.
  +
  +     * sysdep.c (snprintf) [! HAVE_SNPRINTF]: New function.
  +
  +     * term.c (produce_glyphless_glyph): Make sprintf buffer a bit bigger
  +     to avoid potential buffer overrun.
  +
  +     * xfaces.c (x_update_menu_appearance): Don't overrun buffer
  +     if X resource line is longer than 512 bytes.
  +
  +     * xfns.c (x_window): Make sprintf buffer a bit bigger
  +     to avoid potential buffer overrun.
  +
  +     * xterm.c (x_io_error_quitter): Don't overrun sprintf buffer.
  +
  +     * xterm.h (x_check_errors): Add ATTRIBUTE_FORMAT_PRINTF.
  +
  +2011-09-04  Paul Eggert  <eggert@cs.ucla.edu>
  +
  +     Integer overflow fixes for scrolling, etc.
  +     Without these, Emacs silently mishandles large integers sometimes.
  +     For example, "C-u 4294967297 M-x recenter" was treated as if
  +     it were "C-u 1 M-x recenter" on a typical 64-bit host.
  +
  +     * xdisp.c (try_window_id): Check Emacs fixnum range before
  +     converting to 'int'.
  +
  +     * window.c (window_scroll_line_based, Frecenter):
  +     Check that an Emacs fixnum is in range before assigning it to 'int'.
  +     (Frecenter, Fmove_to_window_line): Use EMACS_INT, not int, for
  +     values converted from Emacs fixnums.
  +     (Frecenter): Don't wrap around a line count if it is out of 'int'
  +     range; instead, treat it as an extreme value.
  +     (Fset_window_configuration, compare_window_configurations):
  +     Use ptrdiff_t, not int, for index that might exceed 2 GiB.
   
  -     * ccl.c: Include "character.h".
  -     (Qccl, Qcclp): New variables.
  -     (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
  -     it's less than 256.
  -     (CCL_WRITE_MULTIBYTE_CHAR): Delete.
  -     (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
  -     and DST type.
  -     (ccl_driver): Change types of argument, adjust code accordingly.
  -     (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
  -     ccl_driver.
  -     (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
  -
  -     * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
  -     New members src_multibyte, dst_multibyte, consumed, and produced.
  -     (struct ccl_spec): Delete members decoder and encoder.  New member ccl.
  -     (CODING_SPEC_CCL_PROGRAM): New macro.
  -     (ccl_driver): Update prototype.
  -     (Qccl, Qcclp, Fccl_program_p): Extern them.
  -     (CHECK_CCL_PROGRAM): New macro.
  -
  -     * character.c, character.h, chartab.c: New files.
  -
  -     * charset.c: Mostly re-written.  Move character and multibyte sequence
  -     handling codes to character.c.
  -
  -     * charset.h: Mostly re-written.  Move character and multibyte sequence
  -     handling codes to character.h.
  -
  -     * coding.c, coding.h: Mostly re-written.
  -
  -     * composite.c: Include "character.h" instead of "charset.h".
  -     (CHAR_WIDTH): Move to character.h.
  -     (HASH_KEY, HASH_VALUE): Delete.
  -
  -     * composite.h (enum composition_method): Change order of enumeration
  -     symbols.
  -
  -     * data.c: Include "character.h" instead of "charset.h".
  -     (Faref): Call CHAR_TABLE_REF for a char table.
  -     (Faset): Call CHAR_TABLE_SET for a char table.
  -
  -     * dispextern.h (free_realized_face, check_face_attribytes)
  -     (generate_ascii_font): Extern them.
  -     (free_realized_multibyte_face): Delete extern.
  -
  -     * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
  -     table structure.
  -
  -     * editfns.c: Include "character.h" instead of "charset.h".
  -     (Fchar_to_string): Always call CHAR_STRING.
  -
  -     * emacs.c (main): Call init_charset_once, init_charset,
  -     syms_of_chartab, and syms_of_character.
  -
  -     * fileio.c: Include "character.h" instead of "charset.h".
  -     (Finsert_file_contents): Big change for the new code-conversion API.
  -     (choose_write_coding_system, Fwrite_region): Likewise.
  -     (build_annotations_2): Delete.
  -     (e_write): Big change for the new code-conversion API.
  -
  -     * fns.c: Include "character.h" instead of "charset.h".
  -     (copy_sub_char_table): Move to chartab.c.
  -     (Fcopy_sequence): Call copy_char_table for a char table.
  -     (concat): Delete codes calling count_multibyte.
  -     (string_char_to_byte, string_byte_to_char): Adjust for the new
  -     multibyte form.
  -     (internal_equal): Adjust for the change of char table structure.
  -     (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
  -     (Fchar_table_extra_slot, Fset_char_table_extra_slot)
  -     (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
  -     (char_table_translate, optimize_sub_char_table)
  -     (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
  -     chartab.c.
  -     (char_table_ref_and_index): Delete.
  -     (HASH_KEY, HASH_VALUE): Move to lisp.h.
  -     (Fmd5): Call preferred_coding_system instead of accessing
  -     Vcoding_category_list.  Adjust for the new code-conversion API.
  -     (syms_of_fns): Move defsubr for char table related functions to
  -     chartab.c.
  -
  -     * fontset.c: Mostly re-written.
  -
  -     * fontset.h (struct font_info): Change type of the member encoding_type.
  -     (enum FONT_SPEC_INDEX): New enum.
  -     (fontset_font_pattern, fs_load_font): Update prototype.
  -     (FS_LOAD_FONT): Adjust for the change of fs_load_font.
  -
  -     * indent.c: Include "character.h" instead of "charset.h".
  -     (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
  -
  -     * insdel.c: Include "character.h" instead of "charset.h".
  -     (copy_text): Don't refer to Vnonascii_translation_table.
  -     (insert_from_gap): New function.
  -
  -     * keyboard.c: Include "character.h" instead of "charset.h".
  -     (command_loop_1): Never call direct_output_forward_char before
  -     a non-ASCII character.
  -     (read_char): If Vkeyboard_translate_table is a char table, always
  -     translate a character.
  -
  -     * keymap.c: Include "character.h".
  -     (store_in_keymap): Handle the case that IDX is a cons.
  -     (Fdefine_key): Handle the case that KEY is a cons and the car part
  -     is also a cons (range).
  -     (push_key_description): Adjust for the new character code.
  -     (describe_vector): Call describe_char_table for a char table.
  -     (describe_char_table): New function.
  -
  -     * keymap.h (describe_char_table): Extern it.
  -
  -     * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
  -     (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
  -     (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
  -     (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
  -     Delete.
  -     (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
  -     structure.
  -     (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
  -     (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
  -     (CHARTAB_SIZE_BITS_3): New macros.
  -     (chartab_size): Extern it.
  -     (struct Lisp_Char_Table): Re-design.
  -     (struct Lisp_Sub_Char_Table): New structure.
  -     (HASH_KEY, HASH_VALUE): Move from fns.c.
  -     (CHARACTERBITS): Define as 22.
  -     (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
  -     (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
  -     (GC_SUB_CHAR_TABLE_P): New macro.
  -     (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
  -     (code_convert_string_norecord): Deleted extern.
  -     (init_character_once, syms_of_character, init_charset)
  -     (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
  -
  -     * lread.c: Include "character.h".
  -     (read_multibyte): New arg NBYTES.
  -     (read_escape): Change the meaning of returned *BYTEREP.
  -     (to_multibyte): Delete.
  -     (read1): Adjust the handling of char table and string.
  -
  -     * print.c: Include "character.h" instead of "charset.h".
  -     (print_string): Convert 8-bit raw bytes to octal form by
  -     string_escape_byte8.
  -     (print_object): Adjust for the new multibyte form.  Print 8-bit
  -     raw bytes always in octal form.  Handle sub char table correctly.
  -
  -     * process.c: Include "character.h" instead of "charset.h".
  -     (read_process_output, send_process): Adjust for the new
  -     code-conversion API.
  -
  -     * puresize.h (BASE_PURESIZE): Increase.
  -
  -     * regex.c: Include "character.h" instead of "charset.h".
  -     (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
  -     (regex_compile): Accept a range whose starting and ending
  -     character have different leading bytes.
  -     (analyse_first): Adjust for the above change.
  -
  -     * search.c: Include "character.h" instead of "charset.h".
  -     (search_buffer, boyer_moore): Adjust for the new multibyte form.
  -     (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
  -
  -     * syntax.c: Include "character.h" instead of "charset.h".
  -     (syntax_parent_lookup): Delete.
  -     (Fmodify_syntax_entry): Accept a cons as CHAR.
  -     (skip_chars): Adjust for the new multibyte form.
  -     (init_syntax_once): Call char_table_set_range instead of directly
  -     accessing the structure of a char table.
  -
  -     * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
  -     (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
  -     (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
  -     (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
  -
  -     * term.c: Include "buffer.h" and "character.h".
  -     (encode_terminal_code, write_glyphs): Adjust for the new
  -     code-conversion API.
  -     (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
  -
  -     * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
  -
  -     * xdisp.c: Include "character.h".
  -     (get_next_display_element): Adjust for the new multibyte form.
  -     (disp_char_vector): Adjust for the new char table structure.
  -     (decode_mode_spec_coding): Adjust for the new structure of
  -     coding system.
  -     (decode_mode_spec): Adjust for the new code-conversion API.
  +     * search.c (Freplace_match): Use ptrdiff_t, not int, for indexes
  +     that can exceed INT_MAX.  Check that EMACS_INT value is in range
  +     before assigning it to the (possibly-narrower) index.
  +     (match_limit): Don't assume that a fixnum can fit in 'int'.
   
  -     * xfaces.c: Include "character.h" instead of "charset.h".
  -     (load_face_font): Adjust for the change of choose_face_font and
  -     FS_LOAD_FONT.
  -     (generate_ascii_font): New function.
  -     (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
  -     (set_font_frame_param): Adjust for the change of choose_face_font.
  -     (free_realized_face): Make it public.
  -     (free_realized_faces_for_fontset): Rename from
  -     free_realized_multibyte_face.  Free also faces realized for ASCII.
  -     (choose_face_font): Change arguments.  Adjust for the change of
  -     fontset_font_pattern and FS_LOAD_FONT.
  -
  -     * xfns.c: Include "character.h".
  -     (x_encode_text): Adjust for the new code-conversion API.
  -
  -     * xselect.c: Don't include "charset.h".
  -     (selection_data_to_lisp_data): Adjust for the new code conversion API.
  -
  -     * xterm.c: Include "character.h".
  -     (x_encode_char): New argument CHARSET.  Change caller.
  -     (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
  -     Call ENCODE_CHAR instead of SPLIT_CHAR.
  -     (x_produce_glyphs): Don't check Vnonascii_translation_table Call
  -     CHAR_WIDTH instead of CHARSET_WIDTH.
  -     (XTread_socket): Adjust for the new code-conversion API.
  -     (x_new_font): Adjust for the change of FS_LOAD_FONT.
  -     (x_load_font): Adjust for the change of struct font.
  -
  -2008-02-01  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * xfaces.c (face_at_buffer_position): Remove unused vars.
  +     * print.c (print_object): Use ptrdiff_t, not int, for index that can
  +     exceed INT_MAX.
   
  -2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
  +     * indent.c (position_indentation): Now takes ptrdiff_t, not int.
  +     (Fvertical_motion): Don't wrap around LINES values that don't fit
  +     in 'int'.  Instead, treat them as extreme values.  This is good
  +     enough for windows, which can't have more than INT_MAX lines anyway.
   
  -     * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
  -     Fix overflow checking.
  +2011-09-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
   
  -2008-02-01  Kenichi Handa  <handa@ni.aist.go.jp>
  +     * Require libxml/parser.h to avoid compilation warning.
   
  -     * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
  -     Cancel previous change.
  +     * emacs.c (shut_down_emacs): Call xmlCleanupParser on shutdown.
   
  -2008-01-31  Kenichi Handa  <handa@ni.aist.go.jp>
  +     * xml.c (parse_region): Don't call xmlCleanupParser after parsing,
  +     since this reportedly can destroy thread storage.
   
  -     * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
  -     ccl->eight_bit_control.  Fix check for buffer overflow.
  -     (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
  -     (ccl_driver): Initialize extra_bytes to 0.
  +2011-08-30  Chong Yidong  <cyd@stupidchicken.com>
   
  -2008-01-31  Kenichi Handa  <handa@ni.aist.go.jp>
  +     * syntax.c (find_defun_start): Update all cache variables if
  +     exiting early (Bug#9401).
   
  -     * keyboard.c (make_ctrl_char): If C is a multibyte character, just
  -     return it ORed with ctrl_modifier.
  +2011-08-30  Eli Zaretskii  <eliz@gnu.org>
   
  -2008-01-29  Miles Bader  <miles@gnu.org>
  +     * image.c (x_bitmap_pixmap): Cast to int to avoid compiler warnings.
   
  -     * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
  +     * xdisp.c (produce_stretch_glyph): No longer static, compiled also
  +     when HAVE_WINDOW_SYSTEM is not defined.  Support both GUI and TTY
  +     frames.  Call tty_append_glyph in the TTY case.  (Bug#9402)
   
  -2008-01-28  Jason Rumney  <jasonr@gnu.org>
  +     * term.c (tty_append_glyph): New function.
  +     (produce_stretch_glyph): Static function and its prototype deleted.
   
  -     * w32.c (stat): Don't double check for networked drive.
  +     * dispextern.h (produce_stretch_glyph, tty_append_glyph): Add
  +     prototypes.
   
  -2008-01-28  Stefan Monnier  <monnier@iro.umontreal.ca>
  +2011-08-29  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * window.c (run_window_configuration_change_hook): New function.
  -     Code extracted from set_window_buffer.  Set the selected frame.
  -     (set_window_buffer): Use it.
  -     * window.h (run_window_configuration_change_hook): Declare.
  -     * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
  +     * image.c (parse_image_spec): Check for nonnegative, not for positive,
  +     when checking :margin (Bug#9390).
  +     (IMAGE_NON_NEGATIVE_INTEGER_VALUE_OR_PAIR):
  +     Renamed from IMAGE_POSITIVE_INTEGER_VALUE_OR_PAIR,
  +     so that the name doesn't mislead.  All uses changed.
   
  -     * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
  +2011-08-28  Johan Bockgård  <bojohan@gnu.org>
   
  -2008-01-27  Dan Nicolaescu  <dann@ics.uci.edu>
  +     * term.c (init_tty) [HAVE_GPM]: Move mouse settings after
  +     set_tty_hooks.
   
  -     * Makefile.in: Remove references to unused macros.
  +2011-08-27  Eli Zaretskii  <eliz@gnu.org>
   
  -2008-01-26  Eli Zaretskii  <eliz@gnu.org>
  +     * xdisp.c (move_it_to): Don't bail out early when reaching
  +     position beyond to_charpos, if we are scanning backwards.
  +     (move_it_vertically_backward): When DY == 0, make sure we get to
  +     the first character in the line after the newline.
   
  -     * w32.c (g_b_init_get_sid_sub_authority)
  -     (g_b_init_get_sid_sub_authority_count): New static variables.
  -     (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
  -     (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
  -     (init_user_info): Use them to retrieve uid and gid.
  -     Use 500/513, the Windows defaults, as Administrator's uid/gid.
  -     (fstat): Use pw_uid and pw_gid from the_passwd structure for
  -     st_uid and st_gid of the file.
  +2011-08-27  Paul Eggert  <eggert@cs.ucla.edu>
   
  -2008-01-26  Jason Rumney  <jasonr@gnu.org>
  +     * ccl.c: Improve and simplify overflow checking (Bug#9196).
  +     (ccl_driver): Do not generate an out-of-range pointer.
  +     (Fccl_execute_on_string): Remove unnecessary check for
  +     integer overflow, noted by Stefan Monnier in
  +     <http://lists.gnu.org/archive/html/emacs-devel/2011-08/msg00979.html>.
  +     Remove a FIXME that didn't need fixing.
  +     Simplify the newly-introduced buffer reallocation code.
   
  -     * w32.c (logon_network_drive): New function.
  -     (stat): Use it.
  +2011-08-27  Juanma Barranquero  <lekktu@gmail.com>
   
  -2008-01-26  Chong Yidong  <cyd@stupidchicken.com>
  +     * makefile.w32-in ($(BLD)/alloc.$(O)): Depend on lib/verify.h.
   
  -     * xdisp.c (pos_visible_p): Handle the case where charpos falls on
  -     invisible text covered with an ellipsis.
  +2011-08-26  Paul Eggert  <eggert@cs.ucla.edu>
   
  -2008-01-25  Richard Stallman  <rms@gnu.org>
  +     Integer and memory overflow issues (Bug#9196).
  +
  +     * doc.c (get_doc_string): Rework so that
  +     get_doc_string_buffer_size is the actual buffer size, rather than
  +     being 1 less than the actual buffer size; this makes xpalloc more
  +     convenient.
  +
  +     * image.c (x_allocate_bitmap_record, cache_image):
  +     * xselect.c (Fx_register_dnd_atom):
  +     Simplify previous changes by using xpalloc.
  +
  +     * buffer.c (overlay_str_len): Now ptrdiff_t, not EMACS_INT,
  +     since either will do and ptrdiff_t is convenient with xpalloc.
  +
  +     * charset.c (charset_table_size)
  +     (struct charset_sort_data.priority): Now ptrdiff_t.
  +     (charset_compare): Don't overflow if priorities differ greatly.
  +     (Fsort_charsets): Don't assume list length fits in int.
  +     Check for size-calculation overflow when allocating sort data.
  +     (syms_of_charset): Allocate an initial charset table that is
  +     just under 64 KiB, to avoid problems with glibc malloc and mmap.
  +
  +     * cmds.c (internal_self_insert): Check for size-calculation overflow.
  +
  +     * composite.h (struct composition.glyph_len): Now int, not unsigned.
  +     The actual value is always <= INT_MAX, and leaving it unsigned made
  +     overflow checking harder.
  +
  +     * dispextern.h (struct glyph_matrix.rows_allocated)
  +     (struct face_cache.size): Now ptrdiff_t, for convenience in use
  +     with xpalloc.  The values are still always <= INT_MAX.
  +
  +     * indent.c (compute_motion): Adjust to region_cache_forward sig change.
  +
  +     * lisp.h (xnmalloc, xnrealloc, xpalloc): New decls.
  +     (SAFE_NALLOCA): New macro.
  +
  +     * region-cache.c (struct boundary.pos, find_cache_boundary)
  +     (move_cache_gap, insert_cache_boundary, delete_cache_boundaries)
  +     (set_cache_region, invalidate_region_cache)
  +     (revalidate_region_cache, know_region_cache, region_cache_forward)
  +     (region_cache_backward, pp_cache):
  +     Use ptrdiff_t, not EMACS_INT, since either will do.  This is needed
  +     so that ptrdiff_t * can be passed to xpalloc.
  +     (struct region_cache): Similarly, for gap_start, gap_len, cache_len,
  +     beg_unchanged, end_unchanged, buffer_beg, buffer_end members.
  +     (pp_cache): Don't assume cache_len fits in int.
  +     * region-cache.h: Adjust extern decls to match.
  +
  +     * search.c (scan_buffer, Freplace_match): Use ptrdiff_t, not
  +     EMACS_INT, since either will do, for xpalloc.
  +
  +     * alloc.c: Include verify.h, and check that int fits in ptrdiff_t.
  +     (xnmalloc, xnrealloc, xpalloc): New functions.
  +
  +     * bidi.c (bidi_shelve_header_size): New constant.
  +     (bidi_cache_ensure_space, bidi_shelve_cache): Use it.
  +     (bidi_cache_ensure_space): Avoid integer overflow when allocating.
  +
  +     * bidi.c (bidi_cache_shrink):
  +     * buffer.c (overlays_at, overlays_in, record_overlay_string)
  +     (overlay_strings):
  +     Don't update size of array until after memory allocation succeeds,
  +     because xmalloc/xrealloc may not return.
  +     (struct sortstrlist.bytes): Now ptrdiff_t, as EMACS_INT doesn't help
  +     now that we have proper integer overflow checking.
  +     (record_overlay_string, overlay_strings): Catch overflows when
  +     calculating size of overlay_str_buf.
  +
  +     * callproc.c (Fcall_process): Check for size overflow when
  +     calculating size of args2.
  +     (child_setup): Avoid overflow by using size_t rather than ptrdiff_t.
  +     Normally we prefer signed values, but sticking with ptrdiff_t would
  +     require adding more-complicated checks.
  +
  +     * ccl.c (Fccl_execute_on_string): Check for memory overflow.
  +     Use ptrdiff_t rather than EMACS_INT where ptrdiff_t will do.
  +     Redo buffer-overflow calculations to avoid integer overflow.
  +     Add a FIXME comment where memory seems to be over-allocated.
  +
  +     * character.c (Fstring): Check for size-calculation overflow.
  +
  +     * coding.c (produce_chars): Redo buffer-overflow calculations to avoid
  +     unnecessary integer overflow.  Check for size overflow.
  +     (encode_coding_object): Don't update size until xmalloc succeeds.
  +
  +     * composite.c (get_composition_id): Check for overflow in glyph
  +     length calculations.
  +
  +     Integer and memory overflow fixes for display code.
  +     * dispextern.h (struct glyph_pool.nglyphs): Now ptrdiff_t, not int.
  +     * dispnew.c (adjust_glyph_matrix, realloc_glyph_pool)
  +     (scrolling_window): Check for overflow in size calculations.
  +     (line_draw_cost, realloc_glyph_pool, add_row_entry):
  +     Don't assume glyph table len fits in int.
  +     (struct row_entry.bucket, row_entry_pool_size, row_entry_idx)
  +     (row_table_size): Now ptrdiff_t, not int.
  +     (scrolling_window): Avoid overflow in size calculations.
  +     Don't update size until allocation succeeds.
  +     * fns.c (concat): Check for overflow in size calculations.
  +     (next_almost_prime): Verify NEXT_ALMOST_PRIME_LIMIT.
  +     * lisp.h (RANGED_INTEGERP, TYPE_RANGED_INTEGERP): New macros.
  +     (NEXT_ALMOST_PRIME_LIMIT): New constant.
  +
  +     * doc.c (get_doc_string_buffer_size): Now ptrdiff_t, not int.
  +     (get_doc_string): Check for size calculation overflow.
  +     Don't update size until allocation succeeds.
  +     (get_doc_string, Fsubstitute_command_keys): Use ptrdiff_t, not
  +     EMACS_INT, where ptrdiff_t will do.
  +     (Fsubstitute_command_keys): Check for string overflow.
  +
  +     * editfns.c (set_time_zone_rule): Don't assume environment length
  +     fits in int.
  +     (message_length): Now ptrdiff_t, not int.
  +     (Fmessage_box): Don't update size until allocation succeeds.
  +     Don't assume message length fits in int.
  +     (Fformat): Use ptrdiff_t, not EMACS_INT, where ptrdiff_t will do.
  +
  +     * emacs.c (main): Do not reallocate argv, since there is a null at
  +     the end that can be overwritten, and this way there's no need to
  +     worry about size-calculation overflow.
  +     (sort_args): Check for size-calculation overflow.
  +
  +     * eval.c (init_eval_once, grow_specpdl): Don't update size until
  +     alloc succeeds.
  +     (call_debugger, grow_specpdl): Redo calculations to avoid overflow.
  +
  +     * frame.c (set_menu_bar_lines, x_set_frame_parameters)
  +     (x_set_scroll_bar_width, x_figure_window_size):
  +     Check for integer overflow.
  +     (x_set_alpha): Do not assume XINT fits in int.
  +
  +     * frame.h (struct frame): Use int, not EMACS_INT, where int works.
  +     This is for the members text_lines, text_cols, total_lines, total_cols,
  +     where the system imposes an 'int' limit.
  +
  +     * fringe.c (Fdefine_fringe_bitmap):
  +     Don't update size until alloc works.
  +
  +     * ftfont.c (ftfont_get_open_type_spec, setup_otf_gstring)
  +     (ftfont_shape_by_flt): Check for integer overflow in size calculations.
  +
  +     * gtkutil.c (get_utf8_string, xg_store_widget_in_map):
  +     Check for size-calculation overflow.
  +     (get_utf8_string): Use ptrdiff_t, not size_t, where either will
  +     do, as we prefer signed integers.
  +     (id_to_widget.max_size, id_to_widget.used)
  +     (xg_store_widget_in_map, xg_remove_widget_from_map)
  +     (xg_get_widget_from_map, xg_get_scroll_id_for_window)
  +     (xg_remove_scroll_bar, xg_update_scrollbar_pos):
  +     Use and return ptrdiff_t, not int.
  +     (xg_gtk_scroll_destroy): Don't assume ptrdiff_t fits in int.
  +     * gtkutil.h: Change prototypes to match the above.
  +
  +     * image.c (RANGED_INTEGERP, TYPE_RANGED_INTEGERP): Remove; these
  +     are duplicate now that they've been promoted to lisp.h.
  +     (x_allocate_bitmap_record, x_alloc_image_color)
  +     (make_image_cache, cache_image, xpm_load):
  +     Don't update size until alloc is done.
  +     (xpm_load, lookup_rgb_color, lookup_pixel_color, x_to_xcolors)
  +     (x_detect_edges):
  +     Check for size calculation overflow.
  +     (ct_colors_allocated_max): New constant.
  +     (x_to_xcolors, x_detect_edges): Reorder multiplicands to avoid
  +     overflow.
   
  -     * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
  -     jump back to beginning.  Move some other initializations after that.
  -     (Qwindow_text_change_functions, Vwindow_text_change_functions):
  -     New variables.
  -     (syms_of_xdisp): Init them.
  +     * keyboard.c (read_char, menu_bar_items, tool_bar_items)
  +     (read_char_x_menu_prompt, read_char_minibuf_menu_width)
  +     (read_char_minibuf_menu_prompt, follow_key, read_key_sequence):
  +     Use ptrdiff_t, not int, to count maps.
  +     (read_char_minibuf_menu_prompt): Check for overflow in size
  +     calculations.  Don't update size until allocation succeeds.  Redo
  +     calculations to avoid overflow.
  +     * keyboard.h: Change prototypes to match the above.
  +
  +     * keymap.c (cmm_size, current_minor_maps): Use ptrdiff_t, not int,
  +     to count maps.
  +     (current_minor_maps): Check for size calculation overflow.
  +     * keymap.h: Change prototypes to match the above.
  +
  +     * lread.c (read1, init_obarray): Don't update size until alloc done.
  +
  +     * macros.c (Fstart_kbd_macro): Don't update size until alloc done.
  +     (store_kbd_macro_char): Reorder multiplicands to avoid overflow.
  +
  +     * nsterm.h (struct ns_color_table.size, struct ns_color_table.avail):
  +     Now ptrdiff_t, not int.
  +     * nsterm.m (ns_index_color): Use ptrdiff_t, not int, for table indexes.
  +     (ns_draw_fringe_bitmap): Rewrite to avoid overflow.
  +
  +     * process.c (Fnetwork_interface_list): Check for overflow
  +     in size calculation.
  +
  +     * region-cache.c (move_cache_gap): Check for size calculation overflow.
  +
  +     * scroll.c (do_line_insertion_deletion_costs): Check for size calc
  +     overflow.  Don't bother calling xmalloc when xrealloc will do.
  +
  +     * search.c (Freplace_match): Check for size calculation overflow.
  +     (Fset_match_data): Don't assume list lengths fit in 'int'.
  +
  +     * sysdep.c (system_process_attributes): Use ptrdiff_t, not int,
  +     for command line length.  Do not attempt to address one before the
  +     beginning of an array, as that's not portable.
  +
  +     * term.c (max_frame_lines): Remove; unused.
  +     (encode_terminal_src_size, encode_terminal_dst_size): Now ptrdiff_t,
  +     not int.
  +     (encode_terminal_code, calculate_costs): Check for size
  +     calculation overflow.
  +     (encode_terminal_code): Use ptrdiff_t, not int, to record glyph
  +     table lengths and related sizes.  Don't update size until alloc
  +     done.  Redo calculations to avoid overflow.
  +     (calculate_costs): Don't bother calling xmalloc when xrealloc will do.
  +
  +     * termcap.c (tgetent): Use ptrdiff_t, not int, to record results of
  +     subtracting pointers.
  +     (gobble_line): Check for overflow more carefully.  Don't update size
  +     until alloc done.
  +
  +     * tparam.c (tparam1): Use ptrdiff_t, not int, for sizes.
  +     Don't update size until alloc done.
  +     Redo size calculations to avoid overflow.
  +     Check for size calculation overflow.
  +     (main) [DEBUG]: Fix typo in invoking tparam1.
  +
  +     * xdisp.c (store_mode_line_noprop_char, x_consider_frame_title):
  +     Use ptrdiff_t, not int, for sizes.
  +     (store_mode_line_noprop_char): Don't update size until alloc done.
  +
  +     * xfaces.c (lface_id_to_name_size, Finternal_make_lisp_face):
  +     Use ptrdiff_t, not int, for sizes.
  +     (Finternal_make_lisp_face, cache_face):
  +     Check for size calculation overflow.
  +     (cache_face): Treat size calculation overflows as if they were
  +     memory exhaustion (the usual treatment), rather than aborting.
  +
  +     * xfns.c (x_encode_text, x_set_name_internal)
  +     (Fx_change_window_property): Use ptrdiff_t, not int, to count
  +     sizes, since they can exceed INT_MAX in size.  Check for size
  +     calculation overflow.
  +
  +     * xgselect.c (gfds_size): Now ptrdiff_t, for convenience with xpalloc.
  +     (xg_select): Check for size calculation overflow.
  +     Don't update size until alloc done.
  +
  +     * xrdb.c (get_environ_db): Don't assume path length fits in int,
  +     as sprintf is limited to int lengths.
  +
  +     * xselect.c (X_LONG_SIZE, X_SHRT_MAX, X_SHRT_MIN, X_LONG_MAX)
  +     (X_LONG_MIN): New macros.
  +     Use them to make the following changes clearer.
  +     (MAX_SELECTION_QUANTUM): Make the other bounds on this value clearer.
  +     This change doesn't affect the value now, but it may help remind
  +     future maintainers not to raise the value too much later.
  +     (SELECTION_QUANTUM): Remove, replacing with ...
  +     (selection_quantum): ... new function, which avoids overflow.
  +     All uses changed.
  +     (struct selection_data.size): Now ptrdiff_t, not int, to avoid
  +     assumption that selection length fits in 'int'.
  +     (x_reply_selection_request, x_handle_selection_request)
  +     (x_get_window_property, receive_incremental_selection)
  +     (x_get_window_property_as_lisp_data, selection_data_to_lisp_data)
  +     (lisp_data_to_selection_data, clean_local_selection_data):
  +     Use ptrdiff_t, not int, to record length of selection.
  +     (x_reply_selection_request, x_get_window_property)
  +     (receive_incremental_selection, x_property_data_to_lisp):
  +     Redo calculations to avoid overflow.
  +     (x_reply_selection_request): When sending hint, ceiling it at
  +     X_LONG_MAX rather than relying on wraparound overflow to send
  +     something.
  +     (x_get_window_property, receive_incremental_selection)
  +     (lisp_data_to_selection_data, x_property_data_to_lisp):
  +     Check for size-calculation overflow.
  +     (x_get_window_property, receive_incremental_selection)
  +     (lisp_data_to_selection_data, Fx_register_dnd_atom):
  +     Don't store size until memory allocation succeeds.
  +     (x_get_window_property): Plug memory leak on memory exhaustion.
  +     Don't double-block input; malloc is safe here.  Don't assume 2**34
  +     - 4 fits in unsigned long.  Add an xassert to check
  +     XGetWindowProperty overflow.  Be more careful about overflow
  +     calculations, and distinguish size from memory overflow better.
  +     (receive_incremental_selection): When tracing, don't assume
  +     unsigned int is less than INT_MAX.
  +     (x_selection_data_to_lisp_data): Remove unnecessary (and in theory
  +     harmful) conversions of unsigned short to int.
  +     (lisp_data_to_selection_data): Don't assume that integers
  +     in the range -65535 through -1 fit in an X unsigned short.
  +     Don't assume that ULONG_MAX == X_ULONG_MAX.  Don't store into
  +     result parameters unless successful.  Rely on cons_to_unsigned
  +     to report problems with elements; the old code wasn't right anyway.
  +     (x_check_property_data): Check for int overflow; we cannot use
  +     a wider type due to X limits.
  +     (x_handle_dnd_message): Use unsigned int, to avoid int overflow.
  +
  +     * xsmfns.c (smc_save_yourself_CB): Check for size calc overflow.
  +
  +     * xterm.c (x_color_cells, x_send_scrollbar_event, handle_one_xevent)
  +     (x_term_init): Check for size calculation overflow.
  +     (x_color_cells): Don't store size until memory allocation succeeds.
  +     (handle_one_xevent): Use ptrdiff_t, not int, for byte counts.
  +     Don't assume alloca size is less than MAX_ALLOCA.
  +     (x_term_init): Don't assume length fits in int (sprintf is limited
  +     to int size).
  +
  +     Use ptrdiff_t for composition IDs.
  +     * character.c (lisp_string_width):
  +     * composite.c (composition_table_size, n_compositions)
  +     (get_composition_id, composition_gstring_from_id):
  +     * dispextern.h (struct glyph_string.cmp_id, struct composition_it.id):
  +     * xdisp.c (BUILD_COMPOSITE_GLYPH_STRING):
  +     * window.c (Frecenter):
  +     Use ptrdiff_t, not int, for composition IDs.
  +     * composite.c (get_composition_id): Check for integer overflow.
  +     * composite.h: Adjust prototypes to match the above changes.
  +
  +     Use ptrdiff_t for hash table indexes.
  +     * category.c (hash_get_category_set):
  +     * ccl.c (ccl_driver):
  +     * charset.h (struct charset.hash_index, CHECK_CHARSET_GET_ID):
  +     * coding.c (coding_system_charset_list, detect_coding_system):
  +     * coding.h (struct coding_system.id):
  +     * composite.c (get_composition_id, gstring_lookup_cache):
  +     * fns.c (hash_lookup, hash_put, Fgethash, Fputhash):
  +     * image.c (xpm_get_color_table_h):
  +     * lisp.h (hash_lookup, hash_put):
  +     * minibuf.c (Ftest_completion):
  +     Use ptrdiff_t for hash table indexes, not int (which is too
  +     narrow, on 64-bit hosts) or EMACS_INT (which is too wide, on
  +     32-bit --with-wide-int hosts).
  +
  +     * charset.c (Fdefine_charset_internal): Check for integer overflow.
  +     Add a FIXME comment about memory leaks.
  +     (syms_of_charset): Don't assume xmalloc returns.
  +
  +     Don't assume that stated character widths fit in int.
  +     * character.c (Fchar_width, c_string_width, lisp_string_width):
  +     * character.h (CHAR_WIDTH):
  +     * indent.c (MULTIBYTE_BYTES_WIDTH):
  +     Use sanitize_char_width to avoid undefined and/or bad behavior
  +     with outlandish widths.
  +     * character.h (sanitize_tab_width): Renamed from sanitize_width,
  +     now that we have two such functions.  All uses changed.
  +     (sanitize_char_width): New inline function.
  +
  +     Don't assume that tab-width fits in int.
  +     * character.h (sanitize_width): New inline function.
  +     (SANE_TAB_WIDTH): New macro.
  +     (ASCII_CHAR_WIDTH): Use it.
  +     * indent.c (sane_tab_width): Remove.  All uses replaced by
  +     SANE_TAB_WIDTH (current_buffer).
  +     * xdisp.c (init_iterator): Use SANE_TAB_WIDTH.
  +
  +     * fileio.c: Integer overflow issues with file modes.
  +     (Fset_file_modes, auto_save_1): Don't assume EMACS_INT fits in int.
  +
  +     * charset.c (read_hex): New arg OVERFLOW.  All uses changed.
  +     Remove unreachable code.
  +     (read_hex, load_charset_map_from_file): Check for integer overflow.
  +
  +     * xterm.c: don't go over XClientMessageEvent limit
  +     (scroll_bar_windows_size): Now ptrdiff_t, as we prefer signed.
  +     (x_send_scroll_bar_event): Likewise.  Check that the size does not
  +     exceed limits imposed by XClientMessageEvent, as well as the usual
  +     ptrdiff_t and size_t limits.
  +
  +     * keyboard.c: Overflow, signedness and related fixes.
  +     (make_lispy_movement): Use same integer type in forward decl
  +     that is used in the definition.
  +     (read_key_sequence, keyremap_step):
  +     Change bufsize argument back to int, undoing my 2011-03-30 change.
  +     We prefer signed types, and int is wide enough here.
  +     (parse_tool_bar_item): Don't assume tool_bar_max_label_size is less
  +     than TYPE_MAXIMUM (EMACS_INT) / 2.  Don't let the label size grow
  +     larger than STRING_BYTES_BOUND.  Use ptrdiff_t for Emacs string
  +     length, not size_t.  Use ptrdiff_t for index, not int.
  +     (keyremap_step, read_key_sequence): Redo bufsize check to avoid
  +     possibility of integer overflow.
  +
  +     Overflow, signedness and related fixes for images.
  +
  +     * dispextern.h (struct it.stack[0].u.image.image_id)
  +     (struct_it.image_id, struct image.id, struct image_cache.size)
  +     (struct image_cache.used, struct image_cache.ref_count):
  +     * gtkutil.c (update_frame_tool_bar):
  +     * image.c (x_reference_bitmap, Fimage_size, Fimage_mask_p)
  +     (Fimage_metadata, free_image_cache, clear_image_cache, lookup_image)
  +     (cache_image, mark_image_cache, x_kill_gs_process, Flookup_image):
  +     * nsmenu.m (update_frame_tool_bar):
  +     * xdisp.c (calc_pixel_width_or_height):
  +     * xfns.c (image_cache_refcount):
  +     Image IDs are now ptrdiff_t, not int, to avoid arbitrary limits
  +     on typical 64-bit hosts.
  +
  +     * image.c (RANGED_INTEGERP, TYPE_RANGED_INTEGERP): New macros.
  +     (x_bitmap_pixmap, x_create_x_image_and_pixmap):
  +     Omit unnecessary casts to int.
  +     (parse_image_spec): Check that integers fall into 'int' range
  +     when the callers expect that.
  +     (image_ascent): Redo ascent calculation to avoid int overflow.
  +     (clear_image_cache): Avoid overflow when sqrt (INT_MAX) < nimages.
  +     (lookup_image): Remove unnecessary tests.
  +     (xbm_image_p): Locals are now of int, not EMACS_INT,
  +     since parse_image_check makes sure they fit into int.
  +     (png_load, gif_load, svg_load_image):
  +     Prefer int to unsigned where either will do.
  +     (tiff_handler): New function, combining the cores of the
  +     old tiff_error_handler and tiff_warning_handler.  This
  +     function is rewritten to use vsnprintf and thereby avoid
  +     stack buffer overflows.  It uses only the features of vsnprintf
  +     that are common to both POSIX and native Microsoft.
  +     (tiff_error_handler, tiff_warning_handler): Use it.
  +     (tiff_load, gif_load, imagemagick_load_image):
  +     Don't assume :index value fits in 'int'.
  +     (gif_load): Omit unnecessary cast to double, and avoid double-rounding.
  +     (imagemagick_load_image): Check that crop parameters fit into
  +     the integer types that MagickCropImage accepts.  Don't assume
  +     Vimagemagick_render_type has a nonnegative value.  Don't assume
  +     size_t fits in 'long'.
  +     (gs_load): Use printmax_t to print the widest integers possible.
  +     Check for integer overflow when computing image height and width.
  +
  +2011-08-26  Eli Zaretskii  <eliz@gnu.org>
  +
  +     * xdisp.c (redisplay_window): Don't force window start if point
  +     will be invisible in the resulting window.  (Bug#9324)
  +
  +2011-08-25  Eli Zaretskii  <eliz@gnu.org>
  +
  +     * xdisp.c (compute_display_string_pos): Return 2 in DISP_PROP when
  +     the display spec is of the form `(space ...)'.
  +     (handle_display_spec): Return the value returned by
  +     handle_single_display_spec, not just 1 or zero.
  +     (handle_single_display_spec): If the display spec is of the form
  +     `(space ...)', and specifies display in the text area, return 2
  +     rather than 1.
  +     (try_cursor_movement): Check for the need to scroll more
  +     accurately, and prefer exact match for point under bidi.  Don't
  +     advance `row' beyond the last row of the window.
  +
  +     * dispextern.h (struct bidi_it): Rename the disp_prop_p member
  +     into disp_prop; all users changed.
  +
  +     * bidi.c (bidi_fetch_char): If compute_display_string_pos returns
  +     DISP_PROP = 2, substitute the u+2029 PARAGRAPH SEPARATOR character
  +     for the text covered by the display property.
  +
  +2011-08-25  Chong Yidong  <cyd@stupidchicken.com>
  +
  +     * buffer.c (Fbury_buffer_internal): Rename from Funrecord_buffer.
  +     Change return value to nil.
  +     (Frecord_buffer): Delete unused function.
  +
  +2011-08-24  Eli Zaretskii  <eliz@gnu.org>
  +
  +     * xdisp.c (Fcurrent_bidi_paragraph_direction): For unibyte
  +     buffers, return left-to-right.
  +     (set_cursor_from_row): Consider candidate row a win if its glyph
  +     represents a newline and point is on that newline.  Fixes cursor
  +     positioning on the newline at EOL of R2L text within L2R
  +     paragraph, and vice versa.
  +     (try_cursor_movement): Check continued rows, in addition to
  +     continuation rows.  Fixes unwarranted scroll when point enters a
  +     continued line of R2L text within an L2R paragraph, or vice versa.
  +     (cursor_row_p): Consider the case of point being equal to
  +     MATRIX_ROW_END_CHARPOS.  Prevents cursor being stuck when moving
  +     from the end of a short line to the beginning of a continued line
  +     of R2L text within L2R paragraph.
  +     (RECORD_MAX_MIN_POS): For max_pos, use IT_CHARPOS even for
  +     composed characters.
  +
  +     * bidi.c (bidi_check_type): Use xassert.
  +     (bidi_cache_iterator_state): Update the disp_pos and disp_prop_p
  +     members.
  +
  +2011-08-23  Eli Zaretskii  <eliz@gnu.org>
  +
  +     * bidi.c (bidi_get_type): Abort if we get zero as the bidi type of
  +     a character.
  +
  +2011-08-23  Chong Yidong  <cyd@stupidchicken.com>
  +
  +     * nsfont.m (ns_otf_to_script): Fix typo.
  +
  +2011-08-22  Kenichi Handa  <handa@m17n.org>
  +
  +     * chartab.c (Fset_char_table_extra_slot): Do not inhibit setting a
  +     extra slot even if the purpose is char-code-property-table.
  +
  +2011-08-23  Eli Zaretskii  <eliz@gnu.org>
  +
  +     * xdisp.c (redisplay_window): When computing centering_position,
  +     account for the height of the header line.  (Bug#8874)
  +
  +     * dispnew.c (buffer_posn_from_coords): Use buf_charpos_to_bytepos
  +     instead of CHAR_TO_BYTE.  Fixes a crash when a completion
  +     candidate is selected by the mouse, and that candidate has a
  +     composed character under the mouse.
   
  -     * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
  +     * xdisp.c (x_produce_glyphs): Set it->nglyphs to 1.  Fixes pixel
  +     coordinates reported by pos-visible-in-window-p for a composed
  +     character in column zero.
   
  -     * buffer.c (reset_buffer_local_variables):
  -     Implement `permanent-local-hook'.
  -     (Qpermanent_local_hook): New variable.
  -     (syms_of_buffer): Init and staticpro it.
  +2011-08-23  Stefan Monnier  <monnier@iro.umontreal.ca>
   
  -2008-01-25  Michael Albinus  <michael.albinus@gmx.de>
  +     * cmds.c (Fself_insert_command): Mention post-self-insert-hook.
   
  -     * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
  +2011-08-22  Eli Zaretskii  <eliz@gnu.org>
   
  -2008-01-25  Thien-Thi Nguyen  <ttn@gnuvola.org>
  +     * xdisp.c (BUFFER_POS_REACHED_P): If this is a composition,
  +     consider it a hit if to_charpos is anywhere in the range of the
  +     composed buffer positions.
   
  -     * fns.c (Fclrhash): Return TABLE.
  +2011-08-22  Chong Yidong  <cyd@stupidchicken.com>
   
  -2008-01-23  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  +     * image.c (gif_load): Don't assume that each subimage has the same
  +     dimensions as the base image.  Handle disposal method that is
  +     "undefined" by the gif spec (Bug#9335).
   
  -     * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
  -     (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
  -     is set even without positional changes.
  -     (x_scroll_bar_clear): Set bar->redraw_needed_p.
  +2011-08-20  Chong Yidong  <cyd@stupidchicken.com>
   
  -     * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
  +     * eval.c (Fsignal): Handle `debug' symbol in error handler (Bug#9329).
  +     (Fcondition_case): Document `debug' symbol in error handler.
   
  -2008-01-23  Jason Rumney  <jasonr@gnu.org>
  +2011-08-19  Eli Zaretskii  <eliz@gnu.org>
   
  -     * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
  +     * xfaces.c (face_at_buffer_position): Avoid repeated evaluation of
  +     face ID by FACE_FROM_ID, and avoid a crash when mouse is moved
  +     from an Org mode buffer to a Speedbar frame.
   
  -     * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
  -     the unicode range available in MULE by locale-coding-system.
  -     Improve dbcs lead byte detection.  Set event timestamp and modifiers
  -     earlier.
  +     * xdisp.c (RECORD_MAX_MIN_POS): If the display element comes from
  +     a composition, take its buffer position from IT->cmp_it.charpos.
  +     Fixes cursor positioning at the beginning of a line that begins
  +     with a composed character.
   
  -2008-01-23  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  +2011-08-18  Eli Zaretskii  <eliz@gnu.org>
   
  -     * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
  -     [MAC_OSX] (init_mac_osx_environment): Initialize it.
  -     [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
  -     when used on child processes.
  +     * bidi.c (bidi_get_type): If bidi_type_table reports zero as the
  +     character bidirectional type, use STRONG_L instead.  Fixes crashes
  +     in a buffer produced by `describe-categories'.
   
  -2008-01-21  Michael Albinus  <michael.albinus@gmx.de>
  +     * dispextern.h (struct bidi_it): Move disp_pos and disp_prop_p
  +     members before the level stack, so they would be saved and
  +     restored when copying iterator state.  Fixes incorrect reordering
  +     around TABs covered by display properties.
   
  -     * dbusbind.c (Fdbus_method_return_internal): Rename from
  -     Fdbus_method_return.
  -     (Fdbus_unregister_object): Move to dbus.el.
  -     (Fdbus_call_method, Fdbus_method_return_internal)
  -     (Fdbus_send_signal): Improve debug messages.
  +2011-08-18  Andreas Schwab  <schwab@linux-m68k.org>
   
  -2008-01-20  Martin Rudalics  <rudalics@gmx.at>
  +     * process.c (Fnetwork_interface_list): Correctly determine buffer
  +     size.
   
  -     * undo.c (undo_inhibit_record_point): New variable.
  -     (syms_of_undo): Initialize it.
  -     (record_point): Don't record point when undo_inhibit_record_point
  -     is set.
  +2011-08-17  Chong Yidong  <cyd@stupidchicken.com>
   
  -2008-01-19  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * eval.c (internal_condition_case, internal_condition_case_1)
  +     (internal_condition_case_2, internal_condition_case_n):
  +     Remove unnecessary aborts (Bug#9081).
   
  -     * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
  +2011-08-17  Eli Zaretskii  <eliz@gnu.org>
   
  -     * xdisp.c (Qauto_hscroll_mode): New var.
  -     (syms_of_xdisp): Initialize it.
  -     (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
  -     window's buffer.
  -     (hscroll_windows): Don't check automatic_hscrolling_p here.
  +     * lread.c (Fload) [DOS_NT]: If `openp' returns -2, but the file
  +     has no `load' handler, try opening the file locally.  (Bug#9311)
   
  -     * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
  -     vscroll if we're setting window-buffer to the value it already has.
  +2011-08-16  Ken Brown  <kbrown@cornell.edu>
   
  -2008-01-18  Dan Nicolaescu  <dann@ics.uci.edu>
  +     * gmalloc.c: Expand comment.
   
  -     * m/intel386.h: Remove references to XENIX.
  +2011-08-16  Eli Zaretskii  <eliz@gnu.org>
   
  -2008-01-17  Andreas Schwab  <schwab@suse.de>
  +     * xdisp.c (set_cursor_from_row): Don't accept a previous candidate
  +     if it fails the cursor_row_p test.  Fixes cursor positioning at ZV.
   
  -     * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
  -     instead of HAVE_X86_64_LIB64_DIR.
  -     * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
  +2011-08-16  Ken Brown  <kbrown@cornell.edu>
   
  -2008-01-17  Glenn Morris  <rgm@gnu.org>
  +     Fix memory allocation problems in Cygwin build (Bug#9273).
   
  -     * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
  -     to HAVE_X86_64_LIB64_DIR.
  +     * unexcw.c ( __malloc_initialized): Declare external variable.
  +     (fixup_executable): Force the dumped emacs to reinitialize malloc.
   
  -2008-01-16  Dan Nicolaescu  <dann@ics.uci.edu>
  +     * gmalloc.c [CYGWIN] (bss_sbrk_heapbase, bss_sbrk_heapinfo):
  +     New variables.
  +     (malloc_initialize_1) [CYGWIN]: Prepare for reinitializing the
  +     dumped emacs.
  +     (_free_internal_nolock) [CYGWIN]: Ignore requests to free storage
  +     in the static heap.
  +     [CYGWIN] (special_realloc): New function.
  +     (_realloc_internal_nolock) [CYGWIN]: Use the new function on
  +     requests to realloc storage in the static heap.
   
  -     * s/irix3-3.h:
  -     * s/irix4-0.h:
  -     * s/386-ix.h:
  -     * s/domain.h:
  -     * s/hpux9-x11r4.h:
  -     * s/hpux9shxr4.h: Remove files for systems no longer supported.
  +2011-08-15  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * sysdep.c: Remove code containing references to symbols defined
  -     by unsupported systems.
  +     * bidi.c (bidi_initialize): Remove unused local.
   
  -2008-01-16  Glenn Morris  <rgm@gnu.org>
  +2011-08-15  Eli Zaretskii  <eliz@gnu.org>
   
  -     * coding.c (select-safe-coding-system-function): Doc fix.
  +     * biditype.h: File removed.
   
  -2008-01-15  Glenn Morris  <rgm@gnu.org>
  +     * bidimirror.h: File removed.
   
  -     * config.in: Revert 2008-01-13 change: this is a generated file.
  +     * deps.mk (bidi.o): Remove biditype.h and
  +     bidimirror.h.
   
  -2008-01-13  Tom Tromey  <tromey@redhat.com>
  +     * makefile.w32-in ($(BLD)/bidi.$(O)): Remove biditype.h and
  +     bidimirror.h.
   
  -     * lisp.h: Fix typo.
  +     * dispextern.h: Fix a typo in the comment to bidi_type_t.
   
  -2008-01-13  Dan Nicolaescu  <dann@ics.uci.edu>
  +     * chartab.c: Improve commentary for the uniprop_table API.
   
  -     * m/sequent-ptx.h:
  -     * m/sequent.h:
  -     * s/ptx.h:
  -     * s/ptx4-2.h:
  -     * s/ptx4.h: Remove files for systems no longer supported.
  -
  -     * callproc.c (Fcall_process): Fix previous change.
  -
  -2008-01-13  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * unexsunos4.c: Remove file, system not supported anymore.
  -
  -     * m/mips.h:
  -     * m/intel386.h:
  -     * callproc.c:
  -     * config.in:
  -     * ecrt0.c:
  -     * emacs.c:
  -     * fileio.c:
  -     * frame.c:
  -     * getpagesize.h:
  -     * keyboard.c:
  -     * lread.c:
  -     * process.c:
  -     * puresize.h:
  -     * sysdep.c:
  -     * systty.h:
  -     * syswait.h:
  -     * unexec.c:
  -     * xdisp.c:
  -     * alloc.c: Remove code containing references to symbols defined by
  -     unsupported systems.
  -
  -2008-01-11  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * coding.c (detect_coding_mask): Fix previous change.
  -
  -2008-01-09  Kenichi Handa  <handa@ni.aist.go.jp>
  -
  -     * coding.c (detect_coding_iso2022): New arg
  -     latin_extra_code_state.  Allow Latin extra codes only
  -     when *latin_extra_code_state is nonzero.
  -     (detect_coding_mask): If there is a NULL byte, detect the encoding
  -     as UTF-16 or binary.  If Latin extra codes exist, detect the
  -     encoding as ISO-2022 only when there's no other proper encoding is
  -     found.
  -
  -2008-01-08  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
  -     #ifdef MAC_OS.
  -
  -2008-01-08  Richard Stallman  <rms@gnu.org>
  -
  -     * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
  -
  -2008-01-06  Nick Roberts  <nickrob@snap.net.nz>
  -
  -     * keyboard.c (parse_menu_item): Don't enclose key bindings on
  -     menu bar in parentheses.
  -
  -2008-01-06  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * m/7300.h:
  -     * m/acorn.h:
  -     * m/alliant-2800.h:
  -     * m/alliant.h:
  -     * m/alliant1.h:
  -     * m/alliant4.h:
  -     * m/altos.h:
  -     * m/amdahl.h:
  -     * m/apollo.h:
  -     * m/att3b.h:
  -     * m/aviion-intel.h:
  -     * m/aviion.h:
  -     * m/celerity.h:
  -     * m/clipper.h:
  -     * m/cnvrgnt.h:
  -     * m/convex.h:
  -     * m/cydra5.h:
  -     * m/delta88k.h:
  -     * m/dpx2.h:
  -     * m/dual.h:
  -     * m/elxsi.h:
  -     * m/f301.h:
  -     * m/gould-np1.h:
  -     * m/gould.h:
  -     * m/i860.h:
  -     * m/ibmps2-aix.h:
  -     * m/ibmrt-aix.h:
  -     * m/ibmrt.h:
  -     * m/irist.h:
  -     * m/is386.h:
  -     * m/isi-ov.h:
  -     * m/mega68.h:
  -     * m/mg1.h:
  -     * m/news-r6.h:
  -     * m/news-risc.h:
  -     * m/news.h:
  -     * m/nh3000.h:
  -     * m/nh4000.h:
  -     * m/ns16000.h:
  -     * m/ns32000.h:
  -     * m/nu.h:
  -     * m/orion.h:
  -     * m/orion105.h:
  -     * m/paragon.h:
  -     * m/pfa50.h:
  -     * m/plexus.h:
  -     * m/pyramid.h:
  -     * m/pyrmips.h:
  -     * m/sh3el.h:
  -     * m/sps7.h:
  -     * m/sr2k.h:
  -     * m/stride.h:
  -     * m/sun1.h:
  -     * m/sun2.h:
  -     * m/sun3-68881.h:
  -     * m/sun3-fpa.h:
  -     * m/sun3-soft.h:
  -     * m/sun3.h:
  -     * m/sun386.h:
  -     * m/symmetry.h:
  -     * m/tad68k.h:
  -     * m/tahoe.h:
  -     * m/targon31.h:
  -     * m/tek4300.h:
  -     * m/tekxd88.h:
  -     * m/tower32.h:
  -     * m/tower32v3.h:
  -     * m/ustation.h:
  -     * m/wicat.h:
  -     * m/xps100.h:
  -     * s/cxux.h:
  -     * s/cxux7.h:
  -     * s/dgux.h:
  -     * s/dgux4.h:
  -     * s/dgux5-4-3.h:
  -     * s/dgux5-4r2.h:
  -     * s/esix.h:
  -     * s/esix5r4.h:
  -     * s/hiuxmpp.h:
  -     * s/hiuxwe2.h:
  -     * s/iris3-5.h:
  -     * s/iris3-6.h:
  -     * s/isc2-2.h:
  -     * s/isc3-0.h:
  -     * s/isc4-0.h:
  -     * s/isc4-1.h:
  -     * s/newsos5.h:
  -     * s/newsos6.h:
  -     * s/osf1.h:
  -     * s/osf5-0.h:
  -     * s/riscix1-1.h:
  -     * s/riscix12.h:
  -     * s/sco4.h:
  -     * s/sco5.h:
  -     * s/sunos4-0.h:
  -     * s/sunos4-1.h:
  -     * s/sunos413.h:
  -     * s/sunos4shr.h:
  -     * s/umax.h:
  -     * s/unipl5-2.h:
  -     * s/xenix.h:
  -     * cxux-crt0.s:
  -     * unexapollo.c:
  -     * unexconvex.c:
  -     * unexenix.c:
  -     * unexsni.c: Remove files for systems no longer supported.
  -
  -     * m/intel386.h: Remove references to unsupported systems.
  -
  -     * w32.c (get_emacs_configuration): Remove reference to i860.
  -
  -     * sysdep.c: Remove dead code.
  -
  -2008-01-05  Dan Nicolaescu  <dann@ics.uci.edu>
  -
  -     * s/rtu.h:
  -     * m/masscomp.h: Remove files.  Platform is obsolete.
  -
  -2008-01-04  Michael Albinus  <michael.albinus@gmx.de>
  -
  -     * dbusbind.c (Fdbus_method_return): New function.
  -     (xd_read_message): Add the serial number to the event.
  -     (Fdbus_register_method): Activate the function.
  -
  -2008-01-03  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * keyboard.c (read_key_sequence): Fix typo.
  -
  -2008-01-03  Michael Albinus  <michael.albinus@gmx.de>
  -
  -     * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
  -     (xd_signature, xd_append_arg): Handle element type detection for
  -     empty arrays.
  -     (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
  -     SDATA () calls; this must be solved more general.
  -     (Fdbus_register_signal): Use SBYTES instead of strlen.
  -
  -2008-01-03  Magnus Henoch  <magnus@zemdatav>
  -
  -     * dbusbind.c (xd_append_arg): Use unsigned char instead of
  -     unsigned int for byte values (necessary for big-endian platform).
  -     (Fdbus_call_method): Handle the case of no returned arguments.
  -
  -2007-12-31  Tom Tromey  <tromey@redhat.com>  (tiny change)
  -
  -     * dbusbind.c (xd_read_message): Use non-static input_event struct.
  -
  -2007-12-31  Magnus Henoch  <mange@freemail.hu>
  -
  -     * dbusbind.c (xd_signature): Signature of variant is just "v".
  -
  -2007-12-30  Michael Albinus  <michael.albinus@gmx.de>
  -
  -     * dbusbind.c: Fix several errors and compiler warnings.
  -     Reported by Tom Tromey <tromey@redhat.com>.
  -     (XD_ERROR, XD_DEBUG_MESSAGE)
  -     (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
  -     (xd_append_arg): Part for basic D-Bus types rewritten.
  -     (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
  -     DBUS_TYPE_(U)INT16.  Don't call XD_DEBUG_MESSAGE with "%f" if not
  -     appropriate.
  -     (xd_read_message): Return Qnil.  Don't signal an error; it is not
  -     useful during event reading.
  -     (Fdbus_register_signal): Signal an error if the check for
  -     FUNCTIONP fails.
  -     (Fdbus_register_method): New function.  The implementation is not
  -     complete, the call of the function signals an error therefore.
  -     (Fdbus_unregister_object): New function, renamed from
  -     Fdbus_unregister_signal.  The initial check signals an error, if
  -     the object is not well formed.
  -
  -2007-12-30  Richard Stallman  <rms@gnu.org>
  +     * bidi.c (bidi_paragraph_init): Support zero value of
  +     bidi_ignore_explicit_marks_for_paragraph_level.
  +     (bidi_initialize): Use uniprop_table instead of including
  +     biditype.h and bidimirror.h.
   
  -     * textprop.c (get_char_property_and_overlay):
  -     Signal error if POSITION is out of range in a buffer.
  +     * xdisp.c (move_it_in_display_line_to): Don't reset pixel
  +     coordinates of the iterator when restoring from ppos_it.
  +     (Bug#9296)
   
  -2007-12-29  Martin Rudalics  <rudalics@gmx.at>
  +2011-08-14  Kenichi Handa  <handa@m17n.org>
   
  -     * w32fns.c (Fx_create_frame): Make copy of frame parameters
  -     because the original parameters are in pure storage now.
  +     * process.c (create_process): Call setup_process_coding_systems
  +     after the pid of the process is set to -1 (Bug#8162).
   
  -2007-12-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  +2011-08-14  Eli Zaretskii  <eliz@gnu.org>
   
  -     * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
  +     * xdisp.c (move_it_in_display_line_to): Don't invoke
  +     IT_RESET_X_ASCENT_DESCENT when iterator position was restored from
  +     ppos_it.  Fixes vertical cursor motion when line beginning is
  +     covered by an image.  (Bug#9296)
   
  -2007-12-22  Eli Zaretskii  <eliz@gnu.org>
  +2011-08-14  Jan Djärv  <jan.h.d@swipnet.se>
   
  -     * callint.c (syms_of_callint) <command-history>: Add reference to
  -     history-length in the doc string.
  +     * nsterm.h (ns_run_ascript): Declare.
  +     (NSAPP_DATA2_RUNASSCRIPT): Define.
   
  -2007-12-17  Jason Rumney  <jasonr@gnu.org>
  +     * nsfns.m (as_script, as_result, as_status): New static variables.
  +     (ns_run_ascript): New function.
  +     (Fns_do_applescript): Set variables as_*.  Make an NSApplicationDefined
  +     event with data2 set to NSAPP_DATA2_RUNASSCRIPT, post it and then start
  +     the event loop.  Get status from as_status (Bug#7276).
   
  -     * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
  -     before passing as wParam.
  +     * nsterm.m (sendEvent): If event is NSApplicationDefined and
  +     data2 is NSAPP_DATA2_RUNASSCRIPT, call ns_run_ascript and then exit
  +     the event loop (Bug#7276).
   
  -2007-12-22  Michael Albinus  <michael.albinus@gmx.de>
  +2011-08-14  Andreas Schwab  <schwab@linux-m68k.org>
   
  -     * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
  -     DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
  -     DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
  -     Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
  -     as number.
  -     (Fdbus_call_method): Fix docstring.
  +     * gnutls.c (QCgnutls_bootprop_priority)
  +     (QCgnutls_bootprop_trustfiles, QCgnutls_bootprop_keylist)
  +     (QCgnutls_bootprop_crlfiles, QCgnutls_bootprop_callbacks)
  +     (QCgnutls_bootprop_loglevel, QCgnutls_bootprop_hostname)
  +     (QCgnutls_bootprop_min_prime_bits, QCgnutls_bootprop_verify_flags)
  +     (QCgnutls_bootprop_verify_hostname_error)
  +     (QCgnutls_bootprop_callbacks_verify): Rename from
  +     Qgnutls_bootprop_..., all uses changed.
   
  -2007-12-21  Michael Albinus  <michael.albinus@gmx.de>
  +     * xfaces.c (QCignore_defface): Rename from Qignore_defface, all
  +     uses changed.
   
  -     * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
  -     New macros.
  -     (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
  -     (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
  -     Simplify.
  -     (xd_signature): New function.
  -     (xd_append_arg): Compute also signatures.  Major rewrite.
  -     (xd_retrieve_arg): Make debug messages friendly.
  -     (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
  -     Check for signatures of arguments.
  +2011-08-14  Paul Eggert  <eggert@cs.ucla.edu>
   
  -2007-12-19  Michael Albinus  <michael.albinus@gmx.de>
  +     * xfaces.c (Qframe_set_background_mode): Now static.
  +     * dispextern.h (Qframe_set_background_mode): Remove decl.
   
  -     * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
  -     (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
  -     (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
  -     (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
  -     (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
  -     (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
  -     (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
  -     (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
  -     (xd_retrieve_value): Remove.  Functionality included in ...
  -     (xd_append_arg): New function.
  -     (Fdbus_call_method, Fdbus_send_signal): Apply it.
  +     * process.c (Fnetwork_interface_info): Declare local only if needed.
   
  -2007-12-16  Michael Albinus  <michael.albinus@gmx.de>
  +2011-08-13  Jan Djärv  <jan.h.d@swipnet.se>
   
  -     * dbusbind.c (top): Include <stdio.h>.
  -     (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
  -     dbus_message_new_method_call and dbus_message_new_signal.
  -     (Fdbus_register_signal): Rename unique_name to uname.
  -     Check handler for FUNCTIONP instead of CHECK_SYMBOL.  Handle case of
  -     non-existing unique name.  Fix typos in matching rule.  Return an
  -     object which is useful in Fdbus_unregister_signal.
  -     (Fdbus_unregister_signal): Reimplementation, in order to remove
  -     only the corresponding entry.
  -     (Vdbus_registered_functions_table): Change the order of entries.
  -     Apply these changes in xd_read_message and Fdbus_register_signal.
  +     * process.c: Include ifaddrs.h and net/if_dl.h if available (Bug#8477).
  +     (Fnetwork_interface_list): Allocate in increments of bytes instead
  +     of sizeof (struct ifreq).  Iterate over ifconf.ifc_req by counting
  +     bytes (Bug#8477).  Count bytes correctly when ifr_addr is a struct
  +     sockaddr.
  +     (struct ifflag_def): notrailers is smart on OSX.
  +     (Fnetwork_interface_info): Handle case when ifr_flags is negative.
  +     Get hardware address with getifaddrs if available.
   
  -2007-12-16  Andreas Schwab  <schwab@suse.de>
  +2011-08-12  Eli Zaretskii  <eliz@gnu.org>
   
  -     * fileio.c (Finsert_file_contents): Fix overflow check to not
  -     depend on undefined integer overflow.
  +     * xdisp.c (iterate_out_of_display_property): xassert that
  +     IT->position is set to within IT->object's boundaries.  Break from
  +     the loop as soon as EOB is reached; avoids infloops in redisplay
  +     when IT->position is set up wrongly due to some bug.
  +     Set IT->current to match the bidi iterator unconditionally.
  +     (push_display_prop): Allow GET_FROM_STRING as IT->method on
  +     entry.  Force push_it to save on the stack the current
  +     buffer/string position, to be restored by pop_it.  Fix flags in
  +     the iterator structure wrt the object coming from a display
  +     property, as `line-prefix' and `wrap-prefix' are not ``replacing''
  +     properties.  (Bug#9284)
   
  -2007-12-14  Jason Rumney  <jasonr@gnu.org>
  +2011-08-09  Andreas Schwab  <schwab@linux-m68k.org>
   
  -     * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
  -     for characters above 127.
  +     * fontset.c (fontset_get_font_group): Add proper type checks.
  +     (Bug#9172)
   
  -2007-12-13  Jason Rumney  <jasonr@gnu.org>
  +2011-08-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
   
  -     * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
  -     before dereferencing array.
  -     (lookup_vk_code): Remove zero comparison.
  +     * unexmacosx.c (print_load_command_name): Add cases LC_FUNCTION_STARTS
  +     and LC_VERSION_MIN_MACOSX.
  +     (copy_linkedit_data) [LC_FUNCTION_STARTS]: New function.
  +     (dump_it) [LC_FUNCTION_STARTS]: Use it.
   
  -2007-12-14  Michael Albinus  <michael.albinus@gmx.de>
  +2011-08-08  Eli Zaretskii  <eliz@gnu.org>
   
  -     * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
  -     (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
  -     Use `unsigned int' instead of `uint'.
  -     (xd_read_message, Fdbus_register_signal): Split expressions into
  -     multiple lines before operators "&&" and "||", according to the
  -     GNU Coding Standards.
  +     * xdisp.c (forward_to_next_line_start): Allow to use the
  +     no-display-properties-and-no-overlays under bidi display.
  +     Set disp_pos in the bidi iterator to avoid searches for display
  +     properties and overlays.
   
  -2007-12-14  Eli Zaretskii  <eliz@gnu.org>
  +2011-08-08  Chong Yidong  <cyd@stupidchicken.com>
   
  -     * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
  +     * editfns.c (Fset_time_zone_rule): Document relationship with the
  +     setenv function.
   
  -2007-12-12  Juri Linkov  <juri@jurta.org>
  +     * ftfont.c (ftfont_pattern_entity): Copy the extras argument to
  +     the font entity extracted from the cache (Bug#8109).
   
  -     * buffer.c (Frename_buffer): In interactive spec replace
  -     `read-buffer' with `read-string' that uses `buffer-name-history'
  -     as history, and the current buffer's name as default.
  +2011-08-07  Chong Yidong  <cyd@stupidchicken.com>
   
  -2007-12-10  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * composite.c (autocmp_chars): Don't reset point.  That is done by
  +     restore_point_unwind (Bug#5984).
   
  -     * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
  -     manipulating the backtrace manually.
  -     (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
  -     (struct backtrace, backtrace_list): Remove.
  -     (command_loop_1): Remove dead var `no_direct'.
  +2011-08-07  Juri Linkov  <juri@jurta.org>
   
  -     * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
  -     preserve non-built-in buffer-local variables.
  -     (Fkill_all_local_variables): Don't re-create&re-set permanent
  -     buffer-local variables.
  +     * editfns.c (Fformat_time_string): Doc fix, add tag `usage:'
  +     to show the arg `TIME' instead of `TIMEVAL'.
   
  -2007-12-09  Juri Linkov  <juri@jurta.org>
  +2011-08-06  Eli Zaretskii  <eliz@gnu.org>
   
  -     * buffer.c (Frename_buffer): Change interactive spec from "s" to
  -     Lisp code that uses `read-buffer' with current buffer as default.
  +     * xdisp.c (set_cursor_from_row): Fix cursor positioning when a
  +     display property strides EOL and includes a newline, as in
  +     longlines-mode.  (Bug#9254)
  +     (move_it_in_display_line_to): Fix vertical-motion in a buffer with
  +     word-wrap under bidirectional display.  (Bug#9224)
   
  -2007-12-08  Michael Albinus  <michael.albinus@gmx.de>
  +     * bidi.c (bidi_unshelve_cache): Don't reset the cache if JUST_FREE
  +     is non-zero, even if the data buffer is NULL.  Fixes a crash in
  +     vertical-motion with longlines-mode.  (Bug#9254)
   
  -     * dbusbind.c (xd_read_message): Generate an event for every
  -     registered handler.  There might be several handlers registered
  -     for the same signal.
  -     (Fdbus_register_signal): Don't overwrite a registration for the
  -     same signal.  Add a new registration if handlers are different.
  -     (Vdbus_registered_functions_table): Rework doc string.
  +2011-08-05  Eli Zaretskii  <eliz@gnu.org>
   
  -2007-12-07  Michael Albinus  <michael.albinus@gmx.de>
  +     * bidi.c <bidi_cache_total_alloc>: Now static.
  +     (bidi_initialize): Initialize bidi_cache_total_alloc.
   
  -     * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
  -     (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
  -     DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
  -     (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
  -     Unify argument lists.
  -     (xd_read_message, Fdbus_register_signal): Reorder and extend event
  -     arguments and hash table keys.  Use unique name for service.
  -     (Fdbus_unregister_signal): Remove checks.
  -     (Vdbus_registered_functions_table): Fix doc string.
  +     * xdisp.c (display_line): Release buffer allocated for shelved bidi
  +     cache.  (Bug#9221)
   
  -2007-12-05  Magnus Henoch  <mange@freemail.hu>
  +     * bidi.c (bidi_shelve_cache, bidi_unshelve_cache): Track total
  +     amount allocated this far in `bidi_cache_total_alloc'.
  +     (bidi_unshelve_cache): Accept an additional argument JUST_FREE; if
  +     non-zero, only free the data buffer without restoring the cache
  +     contents.  All callers changed.
   
  -     * process.c (make_process): Initialize pty_flag to 0.
  +     * dispextern.h (bidi_unshelve_cache): Update prototype.
   
  -2007-12-05  Jason Rumney  <jasonr@gnu.org>
  +     * xdisp.c (SAVE_IT, pos_visible_p, move_it_in_display_line_to)
  +     (move_it_in_display_line, move_it_to)
  +     (move_it_vertically_backward, move_it_by_lines): Replace the call
  +     to xfree to an equivalent call to bidi_unshelve_cache.
  +     (move_it_in_display_line_to): Fix logic of returning
  +     MOVE_POS_MATCH_OR_ZV in the bidi case.  (Bug#9224)
   
  -     * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
  -     specified XBMs.
  +2011-08-05  Eli Zaretskii  <eliz@gnu.org>
   
  -2007-12-05  Richard Stallman  <rms@gnu.org>
  +     * xdisp.c (set_cursor_from_row): Prefer the candidate glyph that
  +     came from a string character with a `cursor' property.  (Bug#9229)
   
  -     * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
  +2011-08-04  Jan Djärv  <jan.h.d@swipnet.se>
   
  -2007-12-05  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  +     * Makefile.in (LIB_PTHREAD): New variable.
  +     (LIBES): Add LIB_PTHREAD (Bug#9216).
   
  -     * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
  -     New variable.
  -     (mac_try_close_socket) [MAC_OSX]: New function.
  -     [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
  -     Update cfsockets_for_select.  Replace invalid CFRunLoop source.
  +     * alloc.c, emacs.c, gmalloc.c, gtkutil.c, keyboard.c, syssignal.h:
  +     Rename HAVE_GTK_AND_PTHREAD to HAVE_PTHREAD (Bug#9216).
   
  -     * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
  -     Use mac_try_close_socket.
  +2011-08-04  Andreas Schwab  <schwab@linux-m68k.org>
   
  -2007-12-05  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  +     * regex.c (re_iswctype): Remove some redundant boolean
  +     conversions.
   
  -     * unexmacosx.c (unrelocate): New argument BASE.  Use it instead of
  -     reloc_base.
  -     (copy_dysymtab): Compute relocation base here.
  -     (rebase_reloc_address) [__ppc64__]: New function.
  -     (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
  -     changed.
  +2011-08-04  Jan Djärv  <jan.h.d@swipnet.se>
   
  -2007-12-05  Jason Rumney  <jasonr@gnu.org>
  +     * xterm.c (x_find_topmost_parent): New function.
  +     (x_set_frame_alpha): Find topmost parent window with
  +     x_find_topmost_parent and set the property there also (bug#9181).
  +     (handle_one_xevent): Call x_set_frame_alpha on ReparentNotify.
   
  -     * w32proc.c (sys_spawnve): Quote args with wildcards.
  +2011-08-04  Paul Eggert  <eggert@cs.ucla.edu>
   
  -2007-12-05  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  +     * callproc.c (Fcall_process): Avoid vfork clobbering
  +     the local vars buffer, coding_systems, current_dir.
   
  -     * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
  -     __objc_* sections.
  -     (unrelocate) [_LP64]: Set relocation base to address of data segment.
  +2011-08-03  Stefan Monnier  <monnier@iro.umontreal.ca>
   
  -2007-12-05  Michael Albinus  <michael.albinus@gmx.de>
  +     * keymap.c (Fmake_composed_keymap): Move to subr.el.
   
  -     * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
  -     Move check for Vdbus_registered_functions_table to
  -     xd_read_queued_messages.
  -     (xd_read_queued_messages): Protect xd_read_message calls by
  -     internal_condition_case_1.
  +2011-08-03  Paul Eggert  <eggert@cs.ucla.edu>
   
  -2007-12-04  Michael Albinus  <michael.albinus@gmx.de>
  +     * fontset.c (dump_fontset) [FONTSET_DEBUG]: Declare EXTERNALLY_VISIBLE
  +     so that it is not optimized away.
   
  -     * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
  -     Qdbus_system_bus and Qdbus_session_bus, respectively.
  -     (Vdbus_intern_symbols): Remove.
  -     (Vdbus_registered_functions_table): New hash table.
  -     (XD_SYMBOL_INTERN_SYMBOL): Remove.
  -     (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
  -     Rewrite in order to manage registered functions by hash table
  -     Vdbus_registered_functions_table.
  +     * xdisp.c (compute_display_string_pos): Remove unused local.
   
  -2007-12-03  Jan Djärv  <jan.h.d@swipnet.se>
  +2011-08-02  Eli Zaretskii  <eliz@gnu.org>
   
  -     * xterm.c: Update URL to Window Manager Specification in comment.
  +     Fix slow cursor motion and scrolling in large buffers with
  +     selective display, like Org Mode buffers.  (Bug#9218)
   
  -2007-12-02  Michael Albinus  <michael.albinus@gmx.de>
  +     * dispextern.h (struct bidi_it): New member disp_prop_p.
   
  -     * config.in (HAVE_DBUS): Add.
  +     * xdisp.c: Remove one-slot cache of display string positions.
  +     (compute_display_string_pos): Accept an additional argument
  +     DISP_PROP_P; callers changed.  Scan at most 5K characters forward
  +     for a display string or property.  If found, set DISP_PROP_P
  +     non-zero.
   
  -     * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
  -     (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
  -     (obj): Add $(DBUS_OBJ).
  -     (LIBES): Add $(DBUS_LIBS).
  -     (dbusbind.o): New target.
  +     * bidi.c (bidi_fetch_char): Accept an additional argument
  +     DISP_PROP_P, and pass it to compute_display_string_pos.
  +     Only handle text covered by a display string if DISP_PROP_P is returned
  +     non-zero.  All callers of bidi_fetch_char changed.
   
  -     * dbusbind.c: New file.
  +2011-08-02  Stefan Monnier  <monnier@iro.umontreal.ca>
   
  -     * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
  +     * keymap.c (Fdefine_key): Fix Lisp_Object/int mixup; apply some CSE.
   
  -     * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
  -     (Qdbus_event): New Lisp symbol.
  -     (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
  -     (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
  -     (keys_of_keyboard): Define dbus-event.
  +2010-12-03  Don March  <don@ohspite.net>
   
  -     * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
  +     * keymap.c (Fdefine_key): Fix non-prefix key error message when
  +     last character M-[char] is translated to ESC [char] (bug#7541).
   
  -2007-12-01  Richard Stallman  <rms@gnu.org>
  +2011-08-02  Kenichi Handa  <handa@m17n.org>
   
  -     * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
  +     * lisp.h (uniprop_table): Extern it.
   
  -2007-11-30  Jason Rumney  <jasonr@gnu.org>
  +     * chartab.c (uniprop_table): Make it non-static.
   
  -     * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
  -     (w32con_reset_terminal_modes): Clear screen buffer.
  -     (w32_face_attributes): Don't use color indexes that are out of range.
  -     Only reverse the default colors.
  +2011-08-01  Eli Zaretskii  <eliz@gnu.org>
   
  -     * xfaces.c (map_tty_color, tty_color_name): Remove special case for
  -     WINDOWSNT.
  +     * xdisp.c (forward_to_next_line_start): Accept additional argument
  +     BIDI_IT_PREV, and store into it the state of the bidi iterator had
  +     on the newline.
  +     (reseat_at_next_visible_line_start): Use the bidi iterator state
  +     returned by forward_to_next_line_start to restore the state of
  +     it->bidi_it after backing up to previous newline.  (Bug#9212)
   
  -     * w32console.c, w32term.h (vga_stdcolor_name): Remove.
  +2011-07-30  Andreas Schwab  <schwab@linux-m68k.org>
   
  -2007-11-29  Jason Rumney  <jasonr@gnu.org>
  +     * regex.c (re_comp): Protoize.
  +     (re_exec): Fix return type.
  +     (regexec): Fix type of `ret'.  (Bug#9203)
   
  -     * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
  -     (w32_face_attributes): Use Vtty_defined_color_alist to determine
  -     if the terminal colors are initialized.
  -     (unspecified_fg, unspecified_bg): Remove unused declarations.
  +2011-07-28  Paul Eggert  <eggert@cs.ucla.edu>
   
  -2007-11-29  Andreas Schwab  <schwab@suse.de>
  +     * image.c (check_image_size): Use 1024x1024 if unknown frame (Bug#9189).
  +     This is needed if max-image-size is a floating-point number.
   
  -     * keyboard.c (apply_modifiers): Fix typo.
  +2011-07-28  Andreas Schwab  <schwab@linux-m68k.org>
   
  -2007-11-29  Richard Stallman  <rms@gnu.org>
  +     * print.c (print_object): Print empty symbol as ##.
   
  -     * keymap.c (Fcurrent_local_map): Doc fix.
  +     * lread.c (read1): Read ## as empty symbol.
   
  -2007-11-28  Petr Salinger  <Petr.Salinger@seznam.cz>  (tiny change)
  +2011-07-28  Alp Aker  <alp.tekin.aker@gmail.com>
   
  -     * s/gnu-kfreebsd.h: New file.
  +     * nsfns.m (x_set_foreground_color): Set f->foreground_pixel when
  +     setting frame foreground color (Bug#9175).
  +     (x_set_background_color): Likewise.
   
  -2007-11-28  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * nsmenu.m (-setText): Size tooltip dimensions precisely to
  +     contents (Bug#9176).
  +     (EmacsTooltip -init): Remove bezels and add shadows to
  +     tooltip windows.
   
  -     * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
  -     Don't cast redundantly.
  +     * nsterm.m (ns_dumpglyphs_stretch): Avoid overwriting left fringe
  +     or scroll bar (Bug#8470).
   
  -     * keyboard.c (KEY_TO_CHAR): New macro.
  -     (parse_modifiers, apply_modifiers): Accept integer arguments.
  -     (read_key_sequence): Use them to unify the "shift->unshift" mapping
  -     for chars and symbol keys.
  -     After doing such remapping, apply function-key-map again.
  +     * nsfont.m (nsfont_open): Remove assignment to voffset and
  +     unnecessary vars hshink, expand, hd, full_height, min_height.
  +     (nsfont_draw): Use s->ybase as baseline for glyph drawing (Bug#8913).
   
  -2007-11-27  Dan Nicolaescu  <dann@ics.uci.edu>
  +     * nsterm.h (nsfont_info): Remove voffset field.
   
  -     * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
  -     compiled anymore.
  +2011-07-28  Alp Aker  <alp.tekin.aker@gmail.com>
   
  -2007-11-26  Andreas Schwab  <schwab@suse.de>
  +     Implement strike-through and overline on NextStep (Bug#8863).
   
  -     * process.c (list_processes_1): Fix indentation level of the
  -     command column.
  +     * nsfont.m (nsfont_open): Use underline position provided by font,
  +     instead of hard-coded value of 2.
  +     (nsfont_draw): Call ns_draw_text_decoration instead.
   
  -2007-11-23  Andreas Schwab  <schwab@suse.de>
  +     * nsterm.h: Add declaration for ns_draw_text_decoration.
   
  -     * editfns.c (Fformat): Handle %c specially since it requires the
  -     argument to be of type int.
  +     * nsterm.m (ns_draw_text_decoration): New function for drawing
  +     underline, overline, and strike-through.
  +     (ns_dumpglyphs_image, ns_dumpglyphs_stretch): Add call to
  +     ns_draw_text_decoration.  Change treatment of cursor drawing to
  +     accommodate underlining, etc.
   
  -2007-11-23  Markus Triska  <markus.triska@gmx.at>
  +2011-07-28  Eli Zaretskii  <eliz@gnu.org>
   
  -     * emacs.c (main): Call init_editfns before init_process, since
  -     init_process sets Vprocess_connection_type depending on OS release.
  +     * buffer.c (init_buffer_once): Set bidi-display-reordering to t by
  +     default.
  +
  +2011-07-28  Paul Eggert  <eggert@cs.ucla.edu>
  +
  +     * alloc.c (memory_full) [!SYNC_INPUT]: Fix signal-related race.
  +     Without this fix, if a signal arrives just after memory fills up,
  +     'malloc' might be invoked reentrantly.
  +
  +     * image.c (x_check_image_size) [!HAVE_X_WINDOWS]: Return 1.
  +     In other words, assume that every image size is allowed, on non-X
  +     hosts.  This assumption is probably wrong, but it lets Emacs compile.
  +
  +2011-07-28  Andreas Schwab  <schwab@linux-m68k.org>
  +
  +     * regex.c (re_iswctype): Convert return values to boolean.
  +
  +2011-07-28  Eli Zaretskii  <eliz@fencepost.gnu.org>
  +
  +     * xdisp.c (compute_display_string_pos): Don't use cached display
  +     string position if the buffer had its restriction changed.
  +     (Bug#9184)
  +
  +2011-07-28  Paul Eggert  <eggert@cs.ucla.edu>
  +
  +     * callproc.c (Fcall_process): Use 'volatile' to avoid vfork clobbering.
  +
  +2011-07-28  Paul Eggert  <eggert@cs.ucla.edu>
  +
  +     Integer signedness and overflow and related fixes.  (Bug#9079)
  +
  +     * bidi.c: Integer size and overflow fixes.
  +     (bidi_cache_size, bidi_cache_idx, bidi_cache_last_idx)
  +     (bidi_cache_start, bidi_cache_fetch_state, bidi_cache_search)
  +     (bidi_cache_find_level_change, bidi_cache_ensure_space)
  +     (bidi_cache_iterator_state, bidi_cache_find, bidi_cache_start_stack)
  +     (bidi_find_other_level_edge):
  +     Use ptrdiff_t instead of EMACS_INT where either will do.
  +     This works better on 32-bit hosts configured --with-wide-int.
  +     (bidi_cache_ensure_space): Check for size-calculation overflow.
  +     Use % rather than repeated addition, for better worst-case speed.
  +     Don't set bidi_cache_size until after xrealloc returns, because it
  +     might not return.
  +     (bidi_dump_cached_states): Use ptrdiff_t, not int, to avoid overflow.
  +     (bidi_cache_ensure_space): Also check that the bidi cache size
  +     does not exceed that of the largest Lisp string or buffer.  See Eli
  +     Zaretskii in <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=9079#29>.
  +
  +     * alloc.c (__malloc_size_t): Remove.
  +     All uses replaced by size_t.  See Andreas Schwab's note
  +     <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=9079#8>.
  +
  +     * image.c: Improve checking for integer overflow.
  +     (check_image_size): Assume that f is nonnull, since
  +     it is always nonnull in practice.  This is one less thing to
  +     worry about when checking for integer overflow later.
  +     (x_check_image_size): New function, which checks for integer
  +     overflow issues inside X.
  +     (x_create_x_image_and_pixmap, xbm_read_bitmap_data): Use it.
  +     This removes the need for a memory_full check.
  +     (xbm_image_p): Rewrite to avoid integer multiplication overflow.
  +     (Create_Pixmap_From_Bitmap_Data, xbm_load): Use x_check_image_size.
  +     (xbm_read_bitmap_data): Change locals back to 'int', since
  +     their values must fit in 'int'.
  +     (xpm_load_image, png_load, tiff_load):
  +     Invoke x_create_x_image_and_pixmap earlier,
  +     to avoid much needless work if the image is too large.
  +     (tiff_load): Treat overly large images as if
  +     x_create_x_image_and_pixmap failed, not as malloc failures.
  +     (gs_load): Use x_check_image_size.
  +
  +     * gtkutil.c: Omit integer casts.
  +     (xg_get_pixbuf_from_pixmap): Remove unnecessary cast.
  +     (xg_set_toolkit_scroll_bar_thumb): Rewrite to avoid need for cast.
  +
  +     * image.c (png_load): Don't assume height * row_bytes fits in 'int'.
  +
  +     * xfaces.c (Fbitmap_spec_p): Fix integer overflow bug.
  +     Without this fix, (bitmap-spec-p '(34359738368 1 "x"))
  +     would wrongly return t on a 64-bit host.
  +
  +     * dispnew.c (init_display): Use *_RANGE_OVERFLOW macros.
  +     The plain *_OVERFLOW macros run afoul of GCC bug 49705
  +     <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49705>
  +     and therefore cause GCC to emit a bogus diagnostic in some cases.
  +
  +     * image.c: Integer signedness and overflow and related fixes.
  +     This is not an exhaustive set of fixes, but it's time to
  +     record what I've got.
  +     (lookup_pixel_color, check_image_size): Remove redundant decls.
  +     (check_image_size): Don't assume that arbitrary EMACS_INT values
  +     fit in 'int', or that arbitrary 'double' values fit in 'int'.
  +     (x_alloc_image_color, x_create_x_image_and_pixmap, png_load)
  +     (tiff_load, imagemagick_load_image):
  +     Check for overflow in size calculations.
  +     (x_create_x_image_and_pixmap): Remove unnecessary test for
  +     xmalloc returning NULL; that can't happen.
  +     (xbm_read_bitmap_data): Don't assume sizes fit into 'int'.
  +     (xpm_color_bucket): Use better integer hashing function.
  +     (xpm_cache_color): Don't possibly over-allocate memory.
  +     (struct png_memory_storage, tiff_memory_source, tiff_seek_in_memory)
  +     (gif_memory_source):
  +     Use ptrdiff_t, not int or size_t, to record sizes.
  +     (png_load): Don't assume values greater than 2**31 fit in 'int'.
  +     (our_stdio_fill_input_buffer): Prefer ptrdiff_t to size_t when
  +     either works, as we prefer signed integers.
  +     (tiff_read_from_memory, tiff_write_from_memory):
  +     Return tsize_t, not size_t, since that's what the TIFF API wants.
  +     (tiff_read_from_memory): Don't fail simply because the read would
  +     go past EOF; instead, return a short read.
  +     (tiff_load): Omit no-longer-needed casts.
  +     (Fimagemagick_types): Don't assume size fits into 'int'.
  +
  +     Improve hashing quality when configured --with-wide-int.
  +     * fns.c (hash_string): New function, taken from sxhash_string.
  +     Do not discard information about ASCII character case; this
  +     discarding is no longer needed.
  +     (sxhash-string): Use it.  Change sig to match it.  Caller changed.
  +     * lisp.h: Declare it.
  +     * lread.c (hash_string): Remove, since we now use fns.c's version.
  +     The fns.c version returns a wider integer if --with-wide-int is
  +     specified, so this should help the quality of the hashing a bit.
  +
  +     * emacs.c: Integer overflow minor fix.
  +     (heap_bss_diff): Now uprintmax_t, not unsigned long.  All used changed.
  +     Define only if GNU_LINUX.
  +     (main, Fdump_emacs): Set and use heap_bss_diff only if GNU_LINUX.
  +
  +     * dispnew.c: Integer signedness and overflow fixes.
  +     Remove unnecessary forward decls, that were a maintenance hassle.
  +     (history_tick): Now uprintmax_t, so it's more likely to avoid overflow.
  +     All uses changed.
  +     (adjust_glyph_matrix, realloc_glyph_pool, adjust_frame_message_buffer)
  +     (scrolling_window): Use ptrdiff_t, not int, for byte count.
  +     (prepare_desired_row, line_draw_cost):
  +     Use int, not unsigned, where either works.
  +     (save_current_matrix, restore_current_matrix):
  +     Use ptrdiff_t, not size_t, where either works.
  +     (init_display): Check for overflow more accurately, and without
  +     relying on undefined behavior.
  +
  +     * editfns.c (pWIDE, pWIDElen, signed_wide, unsigned_wide):
  +     Remove, replacing with the new symbols in lisp.h.  All uses changed.
  +     * fileio.c (make_temp_name):
  +     * filelock.c (lock_file_1, lock_file):
  +     * xdisp.c (message_dolog):
  +     Don't assume PRIdMAX etc. works; this isn't portable to pre-C99 hosts.
  +     Use pMd etc. instead.
  +     * lisp.h (printmax_t, uprintmax_t, pMd, pMu): New types and macros,
  +     replacing the pWIDE etc. symbols removed from editfns.c.
  +
  +     * keyboard.h (num_input_events): Now uintmax_t.
  +     This is (very slightly) less likely to mess up due to wraparound.
  +     All uses changed.
   
  -2007-11-22  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * buffer.c: Integer signedness fixes.
  +     (alloc_buffer_text, enlarge_buffer_text):
  +     Use ptrdiff_t rather than size_t when either will do, as we prefer
  +     signed integers.
  +
  +     * alloc.c: Integer signedness and overflow fixes.
  +     Do not impose an arbitrary 32-bit limit on malloc sizes when debugging.
  +     (__malloc_size_t): Default to size_t, not to int.
  +     (pure_size, pure_bytes_used_before_overflow, stack_copy_size)
  +     (Fgarbage_collect, mark_object_loop_halt, mark_object):
  +     Prefer ptrdiff_t to size_t when either would do, as we prefer
  +     signed integers.
  +     (XMALLOC_OVERRUN_CHECK_OVERHEAD): New macro.
  +     (xmalloc_overrun_check_header, xmalloc_overrun_check_trailer):
  +     Now const.  Initialize with values that are in range even if char
  +     is signed.
  +     (XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): Remove, replacing with ...
  +     (xmalloc_put_size, xmalloc_get_size): New functions.  All uses changed.
  +     These functions do the right thing with sizes > 2**32.
  +     (check_depth): Now ptrdiff_t, not int.
  +     (overrun_check_malloc, overrun_check_realloc, overrun_check_free):
  +     Adjust to new way of storing sizes.  Check for size overflow bugs
  +     in rest of code.
  +     (STRING_BYTES_MAX): Adjust to new overheads.  The old code was
  +     slightly wrong anyway, as it missed one instance of
  +     XMALLOC_OVERRUN_CHECK_OVERHEAD.
  +     (refill_memory_reserve): Omit needless cast to size_t.
  +     (mark_object_loop_halt): Mark as externally visible.
  +
  +     * xselect.c: Integer signedness and overflow fixes.
  +     (Fx_register_dnd_atom, x_handle_dnd_message):
  +     Use ptrdiff_t, not size_t, since we prefer signed.
  +     (Fx_register_dnd_atom): Check for ptrdiff_t (and size_t) overflow.
  +     * xterm.h (struct x_display_info): Use ptrdiff_t, not size_t, for
  +     x_dnd_atoms_size and x_dnd_atoms_length.
  +
  +     * doprnt.c: Prefer signed to unsigned when either works.
  +     * eval.c (verror):
  +     * doprnt.c (doprnt):
  +     * lisp.h (doprnt):
  +     * xdisp.c (vmessage):
  +     Use ptrdiff_t, not size_t, when using or implementing doprnt,
  +     since the sizes cannot exceed ptrdiff_t bounds anyway, and we
  +     prefer signed arithmetic to avoid comparison confusion.
  +     * doprnt.c (doprnt): Avoid a "+ 1" that can't overflow,
  +     but is a bit tricky.
  +
  +     Assume freestanding C89 headers, string.h, stdlib.h.
  +     * data.c, doprnt.c, floatfns.c, print.c:
  +     Include float.h unconditionally.
  +     * gmalloc.c: Assume C89-at-least behavior for preprocessor,
  +     limits.h, stddef.h, string.h.  Use memset instead of 'flood'.
  +     * regex.c: Likewise for stddef.h, string.h.
  +     (ISASCII): Remove; can assume it returns 1 now.  All uses removed.
  +     * s/aix4-2.h (HAVE_STRING_H): Remove obsolete undef.
  +     * s/ms-w32.h (HAVE_LIMITS_H, HAVE_STRING_H, HAVE_STDLIB_H)
  +     (STDC_HEADERS): Remove obsolete defines.
  +     * sysdep.c: Include limits.h unconditionally.
  +
  +     Assume support for memcmp, memcpy, memmove, memset.
  +     * lisp.h, sysdep.c (memcmp, memcpy, memmove, memset):
  +     * regex.c (memcmp, memcpy):
  +     Remove; we assume C89 now.
  +
  +     * gmalloc.c (memcpy, memset, memmove): Remove; we assume C89 now.
  +     (__malloc_safe_bcopy): Remove; no longer needed.
  +
  +     * lisp.h (struct vectorlike_header, struct Lisp_Subr): Signed sizes.
  +     Use EMACS_INT, not EMACS_UINT, for sizes.  The code works equally
  +     well either way, and we prefer signed to unsigned.
  +
  +2011-07-27  Lars Magne Ingebrigtsen  <larsi@gnus.org>
  +
  +     * gnutls.c (emacs_gnutls_read): Don't message anything if the peer
  +     closes the connection while we're reading (bug#9182).
  +
  +2011-07-25  Jan Djärv  <jan.h.d@swipnet.se>
  +
  +     * nsmenu.m (ns_popup_dialog): Add an "ok" button if no buttons
  +     are specified (Bug#9168).
  +
  +2011-07-25  Paul Eggert  <eggert@cs.ucla.edu>
  +
  +     * bidi.c (bidi_dump_cached_states): Fix printf format mismatch.
  +     Found by GCC static checking and --with-wide-int on a 32-bit host.
  +
  +2011-07-25  Eli Zaretskii  <eliz@gnu.org>
  +
  +     * xdisp.c (compute_display_string_pos): Fix logic of caching
  +     previous display string position.  Initialize cached_prev_pos to
  +     -1.  Fixes slow-down at the beginning of a buffer.
  +
  +2011-07-24  Eli Zaretskii  <eliz@gnu.org>
  +
  +     * xfaces.c (check_lface_attrs) [HAVE_WINDOW_SYSTEM]: Allow `nil'
  +     for attrs[LFACE_FONTSET_INDEX].
  +
  +2011-07-23  Paul Eggert  <eggert@cs.ucla.edu>
  +
  +     * xml.c (parse_region): Remove unused local
  +     that was recently introduced.
  +
  +2011-07-23  Eli Zaretskii  <eliz@gnu.org>
  +
  +     * xfns.c (unwind_create_frame) [GLYPH_DEBUG]: Adapt to changes in
  +     2008-02-22T17:42:09Z!monnier@iro.umontreal.ca.
  +
  +     * xdisp.c (move_it_in_display_line_to): Record the best matching
  +     position for TO_CHARPOS while scanning the line, and restore it on
  +     exit if none of the characters scanned was an exact match.
  +     Fixes vertical-motion and pos-visible-in-window-p under bidi redisplay
  +     when exact match is impossible due to invisible text, and the
  +     lines are truncated.
  +
  +2011-07-23  Jan Djärv  <jan.h.d@swipnet.se>
  +
  +     * nsterm.m (initFrameFromEmacs): Set NSTitledWindowMask in styleMask
  +     for OSX >= 10.7.
  +
  +2011-07-22  Eli Zaretskii  <eliz@gnu.org>
  +
  +     Fix a significant slow-down of cursor motion with C-n, C-p,
  +     C-f/C-b, and C-v/M-v that couldn't keep up with keyboard
  +     auto-repeat under bidi redisplay in fontified buffers.
  +     * xdisp.c (compute_stop_pos_backwards): New function.
  +     (next_element_from_buffer): Call compute_stop_pos_backwards to
  +     find a suitable prev_stop when we find ourselves before
  +     base_level_stop.
  +     (reseat): Don't look for prev_stop, as that could mean a very long
  +     run.
  +     <cached_disp_pos, cached_disp_buffer, cached_disp_modiff>
  +     <cached_disp_overlay_modiff>: Cache for last found display string
  +     position.
  +     (compute_display_string_pos): Return the cached position if asked
  +     about the same buffer in the same area of character positions, and
  +     the buffer wasn't changed since the time the display string
  +     position was cached.
   
  -     * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
  -     (find_symbol_value): Use do_symval_forwarding.
  +2011-07-22  Eli Zaretskii  <eliz@gnu.org>
   
  -     * data.c (set_internal): Set the value in the `cons-cell' (for
  -     Buffer_Local_values) not only for frame-local variables.
  +     * xdisp.c (rows_from_pos_range): Don't ignore glyphs whose object
  +     is an integer, which is important for empty lines.  (Bug#9149)
   
  -2007-11-22  Andreas Schwab  <schwab@suse.de>
  +2011-07-22  Chong Yidong  <cyd@stupidchicken.com>
   
  -     * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
  -     values to sprintf.
  -     * keymap.c (Fsingle_key_description): Likewise.
  -     * print.c (print_object): Likewise.
  +     * frame.c (Fmodify_frame_parameters): In tty case, update the
  +     default face if necessary (Bug#4238).
   
  -2007-11-22  Jan Djärv  <jan.h.d@swipnet.se>
  +2011-07-21  Chong Yidong  <cyd@stupidchicken.com>
   
  -     * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
  -     file for image is nil.
  +     * editfns.c (Fstring_to_char): No need to explain what a character
  +     is in the docstring (Bug#6576).
   
  -2007-11-22  Dan Nicolaescu  <dann@ics.uci.edu>
  +2011-07-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
   
  -     * term.c: Include stdarg.h.
  -     (fatal): Implement using varargs.
  -     * lisp.h (fatal): Add argument types.  (Restore 2005-09-30 change).
  +     * xml.c (parse_region): Make sure we always return a tree.
   
  -2007-11-21  Stefan Monnier  <monnier@iro.umontreal.ca>
  +2011-07-20  HAMANO Kiyoto  <khiker.mail@gmail.com>
   
  -     * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
  -     * data.c (store_symval_forwarding): Get type from buffer_objfwd.
  -     Update call to buffer_slot_type_mismatch.
  -     * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
  -     (buffer_slot_type_mismatch): Update.
  -     * buffer.c (buffer_local_types): Remove.
  -     (buffer_slot_type_mismatch): Get the symbol and type as arguments.
  -     (defvar_per_buffer): Set the type in the buffer_objfwd.
  +     * xml.c (parse_region): If a document contains only comments,
  +     return that, too.
   
  -2007-11-21  Jason Rumney  <jasonr@gnu.org>
  +2011-07-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
   
  -     * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
  -     CreateFileMapping returns NULL on failure.
  +     * xml.c (make_dom): Return comments, too.
   
  -2007-11-21  Stefan Monnier  <monnier@iro.umontreal.ca>
  +2011-07-19  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * search.c (Fset_match_data): Remove the `evaporate' feature.
  -     (unwind_set_match_data): Don't use the `evaporate' feature.
  +     Port to OpenBSD.
  +     See http://lists.gnu.org/archive/html/emacs-devel/2011-07/msg00688.html
  +     and the surrounding thread.
  +     * minibuf.c (read_minibuf_noninteractive): Rewrite to use getchar
  +     rather than fgets, and retry after EINTR.  Otherwise, 'emacs
  +     --batch -f byte-compile-file' fails on OpenBSD if an inactivity
  +     timer goes off.
  +     * s/openbsd.h (BROKEN_SIGIO): Define.
  +     * unexelf.c (unexec) [__OpenBSD__]:
  +     Don't update the .mdebug section of the Alpha COFF symbol table.
   
  -2007-11-21  Jason Rumney  <jasonr@gnu.org>
  +2011-07-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
   
  -     * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
  +     * lread.c (syms_of_lread): Clarify when `lexical-binding' is used
  +     (bug#8460).
   
  -     * w32console.c (w32con_write_glyphs): Remove unused variables.
  +2011-07-18  Paul Eggert  <eggert@cs.ucla.edu>
   
  -2007-11-20  Dan Nicolaescu  <dann@ics.uci.edu>
  +     * fileio.c (Fcopy_file) [!MSDOS]: Tighten created file's mask.
  +     This fixes some race conditions on the permissions of any newly
  +     created file.
   
  -     * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
  +     * alloc.c (valid_pointer_p): Use pipe, not open.
  +     This fixes some permissions issues when debugging.
   
  -     * s/darwin.h (MULTI_KBOARD): Remove.
  +     * fileio.c (Fcopy_file): Adjust mode if fchown fails.  (Bug#9002)
  +     If fchown fails to set both uid and gid, try to set just gid,
  +     as that is sometimes allowed.  Adjust the file's mode to eliminate
  +     setuid or setgid bits that are inappropriate if fchown fails.
   
  -     * macfns.c (x_create_tip_frame, Fx_create_frame)
  -     (x_create_tip_frame): Don't deal with MULTI_KBOARD.
  +2011-07-18  Stefan Monnier  <monnier@iro.umontreal.ca>
   
  -2007-11-19  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * xdisp.c (next_element_from_string, next_element_from_buffer): Use EQ
  +     to compare Lisp_Objects.
  +     * gnutls.c (syms_of_gnutls): Rename Vgnutls_log_level to
  +     global_gnutls_log_level, don't mistake it for a Lisp_Object.
  +     (init_gnutls_functions, emacs_gnutls_handle_error): Fix up uses.
   
  -     * buffer.c (Fbuffer_local_value): Remove redundant test.
  -     (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
  -     than in `current-buffer' to match the comment.
  -     Do the swap using swap_in_global_binding.
  +2011-07-17  Andreas Schwab  <schwab@linux-m68k.org>
   
  -     * data.c (store_symval_forwarding, set_internal):
  -     * eval.c (specbind): Remove dead code.
  +     * lread.c (read_integer): Unread even EOF character.
  +     (read1): Likewise.  Properly record start position of symbol.
   
  -     * coding.c (detect_coding, Fupdate_coding_systems_internal):
  -     * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
  -     Since we do not want to see internal Lisp_*fwd objects here.
  +     * lread.c (read1): Read `#:' as empty uninterned symbol if no
  +     symbol character follows.
   
  -2007-11-18  Jan Djärv  <jan.h.d@swipnet.se>
  +2011-07-17  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * sysdep.c (init_system_name): Use getaddrinfo if available.
  +     * fileio.c (Fcopy_file): Pacify gcc re fchown.  (Bug#9002)
  +     This works around a problem with the previous change to Fcopy_file.
  +     Recent glibc declares fchown with __attribute__((warn_unused_result)),
  +     and without this change, GCC might complain about discarding
  +     fchown's return value.
   
  -     * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
  -     (x_scroll_bar_note_movement): start, end, with, height in struct
  -     scroll_bar are integers and not Lisp_Object, so remove XINT for them.
  +2011-07-16  Juanma Barranquero  <lekktu@gmail.com>
   
  -2007-11-17  Dan Nicolaescu  <dann@ics.uci.edu>
  +     * makefile.w32-in (GLOBAL_SOURCES): Add gnutls.c (followup to bug#9059).
   
  -     * puresize.h (BASE_PURESIZE): Increase to 1190000.
  +2011-07-16  Paul Eggert  <eggert@cs.ucla.edu>
   
  -2007-11-16  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * fileio.c (Fcopy_file): Don't diagnose fchown failures.  (Bug#9002)
   
  -     * buffer.h (struct buffer): Move `undo_list' back to before `name'.
  -     This undoes Richard's change of 14-Oct-2002.
  +2011-07-16  Lars Magne Ingebrigtsen  <larsi@gnus.org>
   
  -     * alloc.c (allocate_other_vector):
  -     * lisp.h (allocate_other_vector): Remove.
  +     * gnutls.c (syms_of_gnutls): Define `gnutls-log-level' here, since
  +     it's used from the C level.
   
  -     * window.c (struct save_window_data): Move non-lisp data to the end
  -     and make it `int' rather than Lisp_Object.
  -     (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
  -     Done wrap/unwrap integer values.
  -     (Fset_window_configuration, compare_window_configurations):
  -     Update use of fields to their new types.
  -
  -     * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
  -     Turn integer fields into `int'.  Merge x_window_low and x_window_high.
  -     (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
  -     (SET_SCROLL_BAR_X_WINDOW): Remove.
  -     (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
  -     Access the new x_window field directly.
  -     * xterm.c (x_scroll_bar_create): Use a pseudovector.
  -     Don't wrap/unwrap integers into Lisp_Objects.
  -     (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
  -     (x_scroll_bar_report_motion):
  -     Don't wrap/unwrap integers into Lisp_Objects.
  -     (x_term_init): Use SDATA.
  -     (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
  -     (x_scroll_bar_set_handle, x_scroll_bar_remove)
  -     (XTset_vertical_scroll_bar, x_scroll_bar_expose)
  -     (x_scroll_bar_report_motion, x_scroll_bar_clear):
  -     * xfns.c (x_set_background_color):
  -     * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
  -     Access the new x_window field directly.
  -
  -     * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
  -     (allocate_pseudovector): Make non-static.
  -
  -     * lisp.h (enum pvec_type): New tag PVEC_OTHER.
  -     (allocate_pseudovector): Declare.
  -     (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
  -
  -2007-11-15  Andreas Schwab  <schwab@suse.de>
  -
  -     * editfns.c (Fformat): Correctly format EMACS_INT values.
  -     Also take precision into account when formatting an integer.
  -
  -     * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
  -
  -2007-11-15  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * keyboard.c (Fevent_symbol_parse_modifiers): New function.
  -     (syms_of_keyboard): Defsubr it.
  -
  -     * data.c (swap_in_global_binding): Fix longstanding bug where
  -     store_symval_forwarding was not called with the right second argument,
  -     thus causing objfwd-ing from being dropped.
  -
  -2007-11-14  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * macfns.c (Fx_create_frame, Fx_display_pixel_width)
  -     (Fx_display_pixel_height, Fx_display_planes)
  -     (Fx_display_color_cells, Fx_server_max_request_size)
  -     (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
  -     (Fx_display_visual_class, Fx_display_save_under):
  -     * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
  -     (Fx_display_pixel_height, Fx_display_planes)
  -     (Fx_display_color_cells, Fx_server_max_request_size)
  -     (Fx_server_vendor, Fx_server_version, Fx_display_screens)
  -     (Fx_display_mm_height, Fx_display_mm_width)
  -     (Fx_display_backing_store, Fx_display_visual_class)
  -     (Fw32_select_font, Fx_display_save_under):
  -     * xfns.c (Fx_create_frame, Fx_display_pixel_width)
  -     (Fx_display_pixel_height, Fx_display_planes)
  -     (Fx_display_color_cells, Fx_server_max_request_size)
  -     (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
  -     (Fx_display_save_under): Fix typos in docstrings.
  +     * process.c: Use the same condition for POLL_FOR_INPUT in both
  +     keyboard.c and process.c (bug#1858).
   
  -2007-11-14  Juanma Barranquero  <lekktu@gmail.com>
  +2011-07-09  Lawrence Mitchell  <wence@gmx.li>
   
  -     * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
  -     corresponding to deleted entries; they are an implementation detail.
  -     (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
  -     Remove variables.
  -     (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
  -     (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
  -     (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
  -     (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
  -     (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
  -     (Fw32_define_rgb_color, Fw32_load_color_file)
  -     (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
  -     Fix typos in docstrings.
  -     (Fx_server_version): Reflow docstring.
  -     (Fw32_shell_execute): Doc fixes.
  +     * gnutls.c (Qgnutls_bootprop_min_prime_bits): New variable.
  +     (Fgnutls_boot): Use it.
   
  -2007-11-13  Juanma Barranquero  <lekktu@gmail.com>
  +2011-07-15  Andreas Schwab  <schwab@linux-m68k.org>
   
  -     * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
  -     if w32_parse_hot_key returned nil.
  +     * doc.c (Fsubstitute_command_keys): Revert last change.
   
  -2007-11-10  Stefan Monnier  <monnier@iro.umontreal.ca>
  +2011-07-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
   
  -     * xdisp.c (load_overlay_strings): Fix copy&paste typo.
  +     * doc.c (Fsubstitute_command_keys): Clarify that \= really only
  +     quotes the next character, and doesn't affect other longer
  +     sequences (bug#8935).
   
  -2007-11-09  Jason Rumney  <jasonr@gnu.org>
  +     * lread.c (syms_of_lread): Clarify that is isn't only
  +     `eval-buffer' and `eval-defun' that's affected by
  +     `lexical-binding' (bug#8460).
   
  -     * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
  +2011-07-15  Eli Zaretskii  <eliz@gnu.org>
   
  -     * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
  +     * xdisp.c (move_it_in_display_line_to): Fix vertical motion with
  +     bidi redisplay when a line includes both an image and is
  +     truncated.
   
  -     * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
  -     Remove W32_SCROLL_BAR_CLICK_EVENT.
  +2011-07-14  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
  -     Add MULTIMEDIA_KEY_EVENT.
  +     Fix minor problems found by static checking.
  +     * bidi.c (bidi_cache_size): Now EMACS_INT, not size_t.
  +     (elsz): Now a signed constant, not a size_t var.  We prefer signed
  +     types to unsigned, to avoid integer comparison confusion.  Without
  +     this change, GCC 4.6.1 with -Wunsafe-loop-optimizations complains
  +     "cannot optimize loop, the loop counter may overflow", a symptom
  +     of the confusion.
  +     * indent.c (Fvertical_motion): Mark locals as initialized.
  +     * xdisp.c (reseat_to_string): Fix pointer signedness issue.
   
  -     * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
  -     (lispy_multimedia_keys) [WINDOWSNT]: New array.
  -     (make_lispy_event) [WINDOWSNT]: Use it to translate
  -     MULTIMEDIA_KEY_EVENT.
  +2011-07-14  Lars Magne Ingebrigtsen  <larsi@gnus.org>
   
  -     * w32term.h (WM_APPCOMMAND): Define if not already.
  -     (GET_APPCOMMAND_LPARAM): Likewise.
  +     * search.c (Fre_search_backward): Mention `case-fold-search' in
  +     all the re_search_* functions (bug#8138).
   
  -     * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
  -     WM_APPCOMMAND.
  +     * keyboard.c (Fopen_dribble_file): Document when the file is
  +     closed (bug#8056).
   
  -     * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
  -     (syms_of_w32fns): Export and initialize it.
  -     (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
  +2011-07-14  Eli Zaretskii  <eliz@gnu.org>
   
  -2007-11-09  Chong Yidong  <cyd@stupidchicken.com>
  +     * bidi.c (bidi_dump_cached_states): Fix format of displaying
  +     bidi_cache_idx.
   
  -     * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
  -     twice.
  +     Support bidi reordering of display and overlay strings.
  +     * xdisp.c (compute_display_string_pos)
  +     (compute_display_string_end): Accept additional argument STRING.
  +     (init_iterator, reseat_1): Initialize bidi_it->string.s to NULL.
  +     (reseat_to_string): Initialize bidi_it->string.s and
  +     bidi_it->string.schars.
  +     (Fcurrent_bidi_paragraph_direction): Initialize itb.string.s to
  +     NULL (avoids a crash in bidi_paragraph_init).
  +     Initialize itb.string.lstring.
  +     (init_iterator): Call bidi_init_it only of a valid
  +     buffer position was specified.  Initialize paragraph_embedding to
  +     L2R.
  +     (reseat_to_string): Initialize the bidi iterator.
  +     (display_string): If we need to ignore text properties of
  +     LISP_STRING, set IT->stop_charpos to IT->end_charpos.  (The
  +     original value of -1 will not work with bidi.)
  +     (compute_display_string_pos): First arg is now struct
  +     `text_pos *'; all callers changed.  Support display properties on
  +     Lisp strings.
  +     (compute_display_string_end): Support display properties on Lisp
  +     strings.
  +     (init_iterator, reseat_1, reseat_to_string): Initialize the
  +     string.bufpos member to 0 (zero, for compatibility with IT_CHARPOS
  +     when iterating on a string not from display properties).
  +     (compute_display_string_pos, compute_display_string_end):
  +     Fix calculation of the object to scan.  Fixes an error when using
  +     arrow keys.
  +     (next_element_from_buffer): Don't abort when IT_CHARPOS is before
  +     base_level_stop; instead, set base_level_stop to BEGV.
  +     Fixes crashes in vertical-motion.
  +     (next_element_from_buffer): Improve commentary for when
  +     the iterator is before prev_stop.
  +     (init_iterator): Initialize bidi_p from the default value of
  +     bidi-display-reordering, not from buffer-local value.  Use the
  +     buffer-local value only if initializing for buffer iteration.
  +     (handle_invisible_prop): Support invisible properties on strings
  +     that are being bidi-reordered.
  +     (set_iterator_to_next): Support bidi reordering of C strings and
  +     Lisp strings.
  +     (next_element_from_string): Support bidi reordering of Lisp
  +     strings.
  +     (handle_stop_backwards): Support Lisp strings as well.
  +     (display_string): Support display of R2L glyph rows.
  +     Use IT_STRING_CHARPOS when displaying from a Lisp string.
  +     (init_iterator): Don't initialize it->bidi_p for strings
  +     here.
  +     (reseat_to_string): Initialize it->bidi_p for strings here.
  +     (next_element_from_string, next_element_from_c_string)
  +     (next_element_from_buffer): Add xassert's for correspondence
  +     between IT's object being iterated and it->bidi_it.string
  +     structure.
  +     (face_before_or_after_it_pos): Support bidi iteration.
  +     (next_element_from_c_string): Handle the case of the first string
  +     character that is not the first one in the visual order.
  +     (get_visually_first_element): New function, refactored from common
  +     parts of next_element_from_buffer, next_element_from_string, and
  +     next_element_from_c_string.
  +     (tool_bar_lines_needed, redisplay_tool_bar)
  +     (display_menu_bar): Force left-to-right direction.  Add a FIXME
  +     comment for making that be controlled by a user option.
  +     (push_it, pop_it): Save and restore the state of the
  +     bidi iterator.  Save and restore the bidi_p flag.
  +     (pop_it): Iterate out of display property for string iteration as
  +     well.
  +     (iterate_out_of_display_property): Support iteration over strings.
  +     (handle_single_display_spec): Set up it->bidi_it for iteration
  +     over a display string, and call bidi_init_it.
  +     (handle_single_display_spec, next_overlay_string)
  +     (get_overlay_strings_1, push_display_prop): Set up the bidi
  +     iterator for displaying display or overlay strings.
  +     (forward_to_next_line_start): Don't use the shortcut if
  +     bidi-iterating.
  +     (back_to_previous_visible_line_start): If handle_display_prop
  +     pushed the iterator stack, restore the internal state of the bidi
  +     iterator by calling bidi_pop_it same number of times.
  +     (reseat_at_next_visible_line_start): If ON_NEWLINE_P is non-zero,
  +     and we are bidi-iterating, don't decrement the iterator position;
  +     instead, set the first_elt flag in the bidi iterator, to produce
  +     the same effect.
  +     (reseat_1): Remove redundant setting of string_from_display_prop_p.
  +     (push_display_prop): xassert that we are iterating a buffer.
  +     (push_it, pop_it): Save and restore paragraph_embedding member.
  +     (handle_single_display_spec, next_overlay_string)
  +     (get_overlay_strings_1, reseat_1, reseat_to_string)
  +     (push_display_prop): Set up the `unibyte' member of bidi_it.string
  +     correctly.  Don't assume unibyte strings are not bidi-reordered.
  +     (compute_display_string_pos)
  +     (compute_display_string_end): Fix handling the case of C string.
  +     (push_it, pop_it): Save and restore from_disp_prop_p.
  +     (handle_single_display_spec, push_display_prop): Set the
  +     from_disp_prop_p flag.
  +     (get_overlay_strings_1): Reset the from_disp_prop_p flag.
  +     (pop_it): Call iterate_out_of_display_property only if we are
  +     popping after iteration over a string that came from a display
  +     property.  Fix a typo in popping stretch info.  Add an assertion
  +     for verifying that the iterator position is in sync with the bidi
  +     iterator.
  +     (handle_single_display_spec, get_overlay_strings_1)
  +     (push_display_prop): Fix initialization of paragraph direction for
  +     string when that of the parent object is not yet determined.
  +     (reseat_1): Call bidi_init_it to resync the bidi
  +     iterator with IT's position.  (Bug#7616)
  +     (find_row_edges): If ROW->start.pos gives position
  +     smaller than min_pos, use it as ROW->minpos.  (Bug#7616)
  +     (handle_stop, back_to_previous_visible_line_start, reseat_1):
  +     Reset the from_disp_prop_p flag.
  +     (SAVE_IT, RESTORE_IT): New macros.
  +     (pos_visible_p, face_before_or_after_it_pos)
  +     (back_to_previous_visible_line_start)
  +     (move_it_in_display_line_to, move_it_in_display_line)
  +     (move_it_to, move_it_vertically_backward, move_it_by_lines)
  +     (try_scrolling, redisplay_window, display_line): Use them when
  +     saving a temporary copy of the iterator and restoring it back.
  +     (back_to_previous_visible_line_start, reseat_1)
  +     (init_iterator): Empty the bidi cache "stack".
  +     (move_it_in_display_line_to): If iterator ended up at
  +     EOL, but we never saw any buffer positions smaller than
  +     to_charpos, return MOVE_POS_MATCH_OR_ZV.  Fixes vertical cursor
  +     motion in bidi-reordered lines.
  +     (move_it_in_display_line_to): Record prev_method and prev_pos
  +     immediately before the call to set_iterator_to_next.  Fixes cursor
  +     motion in bidi-reordered lines with stretch glyphs and strings
  +     displayed in margins.  (Bug#8133) (Bug#8867)
  +     Return MOVE_POS_MATCH_OR_ZV only if iterator position is past
  +     TO_CHARPOS.
  +     (pos_visible_p): Support positions in bidi-reordered lines.
  +     Save and restore bidi cache.
  +
  +     * bidi.c (bidi_level_of_next_char): clen should be EMACS_NT, not int.
  +     (bidi_paragraph_info): Delete unused struct.
  +     (bidi_cache_idx, bidi_cache_last_idx): Declare EMACS_INT.
  +     (bidi_cache_start): New variable.
  +     (bidi_cache_reset): Reset bidi_cache_idx to bidi_cache_start, not
  +     to zero.
  +     (bidi_cache_fetch_state, bidi_cache_search)
  +     (bidi_cache_find_level_change, bidi_cache_iterator_state)
  +     (bidi_cache_find, bidi_peek_at_next_level)
  +     (bidi_level_of_next_char, bidi_find_other_level_edge)
  +     (bidi_move_to_visually_next): Compare cache index with
  +     bidi_cache_start rather than with zero.
  +     (bidi_fetch_char): Accept new argument STRING; all callers
  +     changed.  Support iteration over a string.  Support strings with
  +     display properties.  Support unibyte strings.  Fix the type of
  +     `len' according to what STRING_CHAR_AND_LENGTH expects.
  +     (bidi_paragraph_init, bidi_resolve_explicit_1)
  +     (bidi_resolve_explicit, bidi_resolve_weak)
  +     (bidi_level_of_next_char, bidi_move_to_visually_next):
  +     Support iteration over a string.
  +     (bidi_set_sor_type, bidi_resolve_explicit_1)
  +     (bidi_resolve_explicit, bidi_type_of_next_char): ignore_bn_limit
  +     can now be zero (for strings); special values 0 and -1 were
  +     changed to -1 and -2, respectively.
  +     (bidi_char_at_pos): New function.
  +     (bidi_paragraph_init, bidi_resolve_explicit, bidi_resolve_weak):
  +     Call it instead of FETCH_MULTIBYTE_CHAR.
  +     (bidi_move_to_visually_next): Abort if charpos or bytepos were not
  +     initialized to valid values.
  +     (bidi_init_it): Don't initialize charpos and bytepos with invalid
  +     values.
  +     (bidi_level_of_next_char): Allow the sentinel "position" to pass
  +     the test for valid cached positions.  Fix the logic for looking up
  +     the sentinel state in the cache.  GCPRO the Lisp string we are
  +     iterating.
  +     (bidi_push_it, bidi_pop_it): New functions.
  +     (bidi_initialize): Initialize the bidi cache start stack pointer.
  +     (bidi_cache_ensure_space): New function, refactored from part of
  +     bidi_cache_iterator_state.  Don't assume the required size is just
  +     one BIDI_CACHE_CHUNK away.
  +     (bidi_cache_start_stack, bidi_push_it): Use IT_STACK_SIZE.
  +     (bidi_count_bytes, bidi_char_at_pos): New functions.
  +     (bidi_cache_search): Don't assume bidi_cache_last_idx is
  +     always valid if bidi_cache_idx is valid.
  +     (bidi_cache_find_level_change): xassert that bidi_cache_last_idx
  +     is valid if it's going to be used.
  +     (bidi_shelve_cache, bidi_unshelve_cache): New functions.
  +     (bidi_cache_fetch_state, bidi_cache_search)
  +     (bidi_cache_find_level_change, bidi_cache_ensure_space)
  +     (bidi_cache_iterator_state, bidi_cache_find)
  +     (bidi_find_other_level_edge, bidi_cache_start_stack):
  +     All variables related to cache indices are now EMACS_INT.
   
  -     * xdisp.c (handle_face_prop): Fix last change.
  +     * dispextern.h (struct bidi_string_data): New structure.
  +     (struct bidi_it): New member `string'.  Make flag members be 1-bit
  +     fields, and put them last in the struct.
  +     (compute_display_string_pos, compute_display_string_end):
  +     Update prototypes.
  +     (bidi_push_it, bidi_pop_it): Add prototypes.
  +     (struct iterator_stack_entry): New members bidi_p,
  +     paragraph_embedding, and from_disp_prop_p.
  +     (struct it): Member bidi_p is now a bit field 1 bit wide.
  +     (bidi_shelve_cache, bidi_unshelve_cache):
  +     Declare prototypes.
   
  -2007-11-09  Richard Stallman  <rms@gnu.org>
  +     * .gdbinit (xvectype, xvector, xcompiled, xchartable, xboolvector)
  +     (xpr, xfont, xbacktrace): Use "header.size" when accessing vectors
  +     and vector-like objects.
   
  -     * xdisp.c (handle_face_prop): Test for strings that came from overlays,
  -     not just for after-strings and before-strings.
  -     Call face_for_overlay_string and pass the overlay to it.
  -     (handle_display_prop): Determine whether property came from an overlay.
  -     Pass OVERLAY arg to handle_single_display_spec.
  -     (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
  -     (load_overlay_strings): Fill in it->string_overlays.
  -     (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
  +     * dispnew.c (buffer_posn_from_coords): Save and restore the bidi
  +     cache around display iteration.
   
  -     * xfaces.c (face_for_overlay_string): Function renamed from
  -     face_at_buffer_position_no_overlays, and add arg OVERLAY.
  +     * window.c (Fwindow_end, window_scroll_pixel_based)
  +     (displayed_window_lines, Frecenter): Save and restore the bidi
  +     cache around display iteration.
   
  -     * dispextern.h (struct it): New elt string_overlays.
  -     New elt from_overlay, also in stack.
  -     Rearrange a few elements.
  -     (face_for_overlay_string): Decl renamed from
  -     face_at_buffer_position_no_overlays, and add argument.
  +2011-07-14  Lars Magne Ingebrigtsen  <larsi@gnus.org>
   
  -2007-11-09  Richard Stallman  <rms@gnu.org>
  +     * editfns.c (Fdelete_region): Clarify the use of the named
  +     parameters (bug#6788).
   
  -     * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
  -     to get the base face for an overlay string.
  +2011-07-14  Martin Rudalics  <rudalics@gmx.at>
   
  -     * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
  +     * indent.c (Fvertical_motion): Set and restore w->pointm when
  +     saving and restoring the window's buffer (Bug#9006).
   
  -     * xfaces.c (face_at_buffer_position_no_overlays): New function.
  +2011-07-13  Lars Magne Ingebrigtsen  <larsi@gnus.org>
   
  -     * xdisp.c (handle_stop): Move some code out of loop.
  +     * editfns.c (Fstring_to_char): Clarify just what is returned
  +     (bug#6576).  Text by Eli Zaretskii.
   
  -2007-11-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  +2011-07-13  Juanma Barranquero  <lekktu@gmail.com>
   
  -     * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
  -     Fix conversion from Lisp object to ATSUFontID.
  +     * gnutls.c (init_gnutls_functions): Honor gnutls_log_level (bug#9059).
   
  -2007-11-09  Jason Rumney  <jasonr@gnu.org>
  +2011-07-13  Eli Zaretskii  <eliz@gnu.org>
   
  -     * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
  +     * buffer.c (mmap_find): Fix a typo.
   
  -2007-11-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  +2011-07-13  Johan Bockgård  <bojohan@gnu.org>
   
  -     * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
  -     Don't assume regions are aligned to page boundary.
  -     (print_load_command_name): Add LC_UUID if defined.
  +     Fix execution of x selection hooks.
  +     * xselect.c (Qx_lost_selection_functions)
  +     (Qx_sent_selection_functions): New vars.
  +     (syms_of_xselect): DEFSYM them.
  +     (x_handle_selection_request): Pass Qx_sent_selection_functions
  +     rather than Vx_sent_selection_functions to Frun_hook_with_args.
  +     (x_handle_selection_clear,x_clear_frame_selections):
  +     Pass Qx_lost_selection_functions rather than
  +     Vx_lost_selection_functions to Frun_hook_with_args.
   
  -2007-11-09  Richard Stallman  <rms@gnu.org>
  +2011-07-13  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
  +     * buffer.c (Fget_buffer_create): Initialize inhibit_shrinking.
  +     The old code sometimes used this field without initializing it.
   
  -2007-11-07  Jason Rumney  <jasonr@gnu.org>
  +     * alloc.c (gc_sweep): Don't read past end of array.
  +     In theory, the old code could also have corrupted Emacs internals,
  +     though it'd be very unlikely.
   
  -     * s/windows95.h: Remove.
  +2011-07-12  Andreas Schwab  <schwab@linux-m68k.org>
   
  -2007-11-06  Jan Djärv  <jan.h.d@swipnet.se>
  +     * character.c (Fcharacterp): Don't advertise optional ignored
  +     argument.  (Bug#4026)
   
  -     * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
  -     abort with a message on unhandled store_type values.
  +2011-07-12  Lars Magne Ingebrigtsen  <larsi@gnus.org>
   
  -2007-11-01  Jan Djärv  <jan.h.d@swipnet.se>
  +     * keymap.c (syms_of_keymap): Clarify that "modifier" is "modifier
  +     key" (bug#4257).
   
  -     * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
  -     Remove HAVE_X11R5 and HAVE_X11R4.
  +     * window.c (Fset_window_start): Doc fix (bug#4199).
  +     (Fset_window_hscroll): Ditto.
   
  -2007-11-01  Dan Nicolaescu  <dann@ics.uci.edu>
  +2011-07-12  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * Makefile.in: Remove references to sunfns.c and sunfns.o.
  +     Fix minor new problems caught by GCC 4.6.1.
  +     * term.c (init_tty): Remove unused local.
  +     * xsettings.c (store_monospaced_changed): Define this function only
  +     if (defined HAVE_GSETTINGS || defined HAVE_GCONF), as it's
  +     not used otherwise.
   
  -2007-11-01  Johan Bockgård  <bojohan@gnu.org>
  +2011-07-12  Chong Yidong  <cyd@stupidchicken.com>
   
  -     * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
  -     Don't set s->stippled_p here, since it has already been set by
  -     x_set_glyph_string_gc from x_draw_glyph_string.
  +     * xdisp.c (Vresize_mini_windows): Minor doc fix (Bug#3300).
   
  -2007-11-01  Dan Nicolaescu  <dann@ics.uci.edu>
  +2011-07-11  Lars Magne Ingebrigtsen  <larsi@gnus.org>
   
  -     * sunfns.c: Remove file.
  +     * xdisp.c (syms_of_xdisp): Make it explicit that the mini-windows
  +     are the mini-buffer and the echo area (bug#3320).
   
  -     * m/sun386.h:
  -     * m/sun2.h:
  -     * m/sparc.h: Remove Sun windows code.
  +     * term.c (init_tty): Remove support for supdup, c10 and perq
  +     terminals, which are no longer supported (bug#1482).
   
  -2007-10-31  Stefan Monnier  <monnier@iro.umontreal.ca>
  +2011-07-10  Johan Bockgård  <bojohan@gnu.org>
   
  -     * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
  -     (init_keyboard): Set current_kboard's window-system to nil.
  -     (tty_read_avail_input): Typo.
  -     * frame.c (make_initial_frame): Don't initialize the initial_kboard.
  +     * xdisp.c (Ftool_bar_lines_needed): Fix WINDOWP check.
   
  -2007-10-31  Dan Nicolaescu  <dann@ics.uci.edu>
  +2011-07-10  Jan Djärv  <jan.h.d@swipnet.se>
   
  -     * s/usg5-4.h:
  -     * s/usg5-3.h:
  -     * s/ptx.h:
  -     * m/is386.h:
  -     * m/ibmps2-aix.h:
  -     * Makefile.in: Remove all mentions of X10.
  +     * xmenu.c (menu_highlight_callback): Only pass frame to show_help_event
  +     for non-popups (Bug#3642).
   
  -     * dispnew.c (syms_of_display): Don't mention version 10.
  +2011-07-10  Andreas Schwab  <schwab@linux-m68k.org>
   
  -2007-10-28  Juanma Barranquero  <lekktu@gmail.com>
  +     * alloc.c (reset_malloc_hooks): Protoize.
  +     * buffer.c (mmap_init, mmap_find, mmap_free_1, mmap_enlarge)
  +     (mmap_set_vars, mmap_alloc, mmap_free, mmap_realloc): Likewise.
  +     * cm.c (losecursor): Likewise.
  +     * data.c (fmod): Likewise.
  +     * dispnew.c (swap_glyphs_in_rows): Likewise.
  +     * emacs.c (memory_warning_signal): Likewise.
  +     * floatfns.c (float_error): Likewise.
  +     * font.c (check_gstring, check_otf_features, otf_tag_symbol)
  +     (otf_open, font_otf_capability, generate_otf_features)
  +     (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
  +     Likewise.
  +     * image.c (pbm_read_file): Likewise.
  +     * indent.c (string_display_width): Likewise.
  +     * intervals.c (check_for_interval, search_for_interval)
  +     (inc_interval_count, count_intervals, root_interval)
  +     (adjust_intervals_for_insertion, make_new_interval): Likewise.
  +     * lread.c (defalias): Likewise.
  +     * ralloc.c (r_alloc_check): Likewise.
  +     * regex.c (set_image_of_range_1, set_image_of_range)
  +     (regex_grow_registers): Likewise.
  +     * sysdep.c (strerror): Likewise.
  +     * termcap.c (valid_filename_p, tprint, main): Likewise.
  +     * tparam.c (main): Likewise.
  +     * unexhp9k800.c (run_time_remap, save_data_space)
  +     (update_file_ptrs, read_header, write_header, calculate_checksum)
  +     (copy_file, copy_rest, display_header): Likewise.
  +     * widget.c (mark_shell_size_user_specified, create_frame_gcs):
  +     Likewise.
  +     * xdisp.c (check_it): Likewise.
  +     * xfaces.c (register_color, unregister_color, unregister_colors):
  +     Likewise.
  +     * xfns.c (print_fontset_result): Likewise.
  +     * xrdb.c (member, fatal, main): Likewise.
   
  -     * makefile.w32-in (OBJ1): Remove abbrev.$(O).
  -     ($(BLD)/abbrev.$(O)): Remove.
  +2011-07-10  Paul Eggert  <eggert@cs.ucla.edu>
   
  -2007-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     Fix minor problems found by static checking (Bug#9031).
  +     * chartab.c (char_table_set_range, map_sub_char_table):
  +     Remove unused locals.
  +     (uniprop_table): Now static.
  +     * composite.c (_work_char): Remove unused static var.
   
  -     Rewrite abbrev.c in Elisp.
  -     * image.c (Qcount): Don't declare as extern.
  -     (syms_of_image): Initialize and staticpro `Qcount'.
  -     * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
  -     * emacs.c (main): Don't call syms_of_abbrev.
  -     * Makefile.in (obj): Remove abbrev.o.
  -     (abbrev.o): Remove.
  -     * abbrev.c: Remove.
  +2011-07-09  Juanma Barranquero  <lekktu@gmail.com>
   
  -2007-10-26  Martin Rudalics  <rudalics@gmx.at>
  +     * chartab.c (uniprop_table_uncompress): Remove unused local variable.
   
  -     * window.c (window_min_size_2): Don't count header-line.
  +2011-07-09  Jan Djärv  <jan.h.d@swipnet.se>
   
  -2007-10-26  Dan Nicolaescu  <dann@ics.uci.edu>
  +     * gtkutil.c (qttip_cb): Remove code without function.
   
  -     * frame.h (struct frame): Move all bit fields after the first bit
  -     field to take advantage of the available space.  Group all the
  -     chars together to reduce wasted space due to padding.
  +2011-07-09  Eli Zaretskii  <eliz@gnu.org>
   
  -2007-10-26  Juanma Barranquero  <lekktu@gmail.com>
  +     * w32.c (pthread_sigmask): New stub.
   
  -     * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
  +2011-07-08  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
  -     (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
  -     (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
  -     (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
  -     (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
  -     (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
  -     (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
  -     (last_marked, mark_object_loop_halt): Make static.
  +     Use pthread_sigmask, not sigprocmask (Bug#9010).
  +     sigprocmask is portable only for single-threaded applications, and
  +     Emacs can be multi-threaded when it uses GTK.
  +     * Makefile.in (LIB_PTHREAD_SIGMASK): New macro.
  +     (LIBES): Use it.
  +     * callproc.c (Fcall_process):
  +     * process.c (create_process):
  +     * sysdep.c (sys_sigblock, sys_sigunblock, sys_sigsetmask):
  +     Use pthread_sigmask, not sigprocmask.
   
  -     * frame.c (syms_of_frame) <delete-frame-functions>:
  -     Fix typo in docstring.
  +2011-07-08  Jan Djärv  <jan.h.d@swipnet.se>
   
  -2007-10-25  Juanma Barranquero  <lekktu@gmail.com>
  +     * gtkutil.c (qttip_cb): Set line wrap to FALSE for tooltip widget.
  +     (xg_prepare_tooltip): Revert text in x->ttip_lbl, margins was
  +     wrong (Bug#8591).
   
  -     * w32.c (init_environment): Fix tiny memory leak.
  -     (w32_get_resource): Remove unused variable `ok'.
  +2011-07-08  Jan Djärv  <jan.h.d@swipnet.se>
   
  -2007-10-25  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * gtkutil.c (xg_prepare_tooltip): Fix indentation and comment.
  +     Put text in x->ttip_lbl instead of gtk_tooltip_set_text (Bug#8591).
  +     (xg_hide_tooltip): Fix comment.
   
  -     Make `window-system' into a keyboard-local variable (rather than
  -     frame-local as done originally by multi-tty).
  +     * nsterm.m (initFrameFromEmacs): Don't use ns_return_types
  +     in registerServicesMenuSendTypes.
  +     (validRequestorForSendType): Don't check ns_return_types.
   
  -     * keyboard.h (struct kboard): Add Vwindow_system.
  -     * keyboard.c (init_kboard): Set a default for Vwindow_system.
  -     (mark_kboards): Mark Vwindow_system.
  +     * nsfns.m (Fx_open_connection): Put NSStringPboardType into
  +     ns_return_type.
   
  -     * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
  -     (init_display): Don't set the obsolete `window-system' frame-param.
  +2011-07-08  Jason Rumney  <jasonr@gnu.org>
   
  -     * xterm.c (x_term_init):
  -     * w32term.c (w32_create_terminal):
  -     * term.c (init_tty): Set Vwindow_system.
  -     * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
  -     multi-tty merge maybe?), copied from w32term.c.  Set Vwindow_system.
  +     * w32fns.c (w32_wnd_proc) [WM_TIMER, WM_SET_CURSOR]: Avoid using
  +     frame struct members of non-existent frames (Bug#6284).
   
  -     * xfns.c (Fx_create_frame, x_create_tip_frame):
  -     * w32fns.c (Fx_create_frame, x_create_tip_frame):
  -     * macfns.c (Fx_create_frame):
  -     Don't set the obsolete `window-system' frame-param.
  +2011-07-08  Jan Djärv  <jan.h.d@swipnet.se>
   
  -     * frame.h (Qwindow_system): Remove.
  -     * frame.c (Qwindow_system): Remove.  In `syms_of_frame' as well.
  -     (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
  +     * nsterm.m (keyDown): Call to wantsToDelayTextChangeNotifications and
  +     variable firstTime not needed on OSX >= 10.6.
  +     (setPosition): setFloatValue:knobProportion: is deprecated on OSX
  +     >= 10.5.  Use setKnobProportion, setDoubleValue.
   
  -2007-10-24  Richard Stallman  <rms@gnu.org>
  +     * nsterm.h (MAC_OS_X_VERSION_10_3, MAC_OS_X_VERSION_10_4)
  +     (MAC_OS_X_VERSION_10_5): Define if not defined.
  +     (EmacsView, EmacsTooltip): Implements NSWindowDelegate on OSX >= 10.6.
  +     (EmacsMenu): Implements NSMenuDelegate on OSX >= 10.6.
  +     (EmacsToolbar): Implements NSToolbarDelegate on OSX >= 10.6.
   
  -     * frame.c (x_figure_window_size): For fullscreen case,
  -     set USPosition | PPosition without clobbering rest of window_prompting.
  +     * nsselect.m (ns_string_from_pasteboard): Don't use deprecated methods
  +     cString and lossyCString on OSX >= 10.4
   
  -     * keyboard.c (Fcurrent_idle_time): Doc fix.
  +     * nsmenu.m (fillWithWidgetValue): Don't use depercated method
  +     sizeToFit on OSX >= 10.2.
   
  -     * print.c (Fwith_output_to_temp_buffer): Doc fix.
  +     * nsimage.m (allocInitFromFile): Don't use deprecated method
  +     bestRepresentationForDevice on OSX >= 10.6.
   
  -2007-10-23  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * nsfns.m (check_ns_display_info): Cast to long and use %ld in error
  +     to avoid warning.
   
  -     * process.c (unwind_request_sigio): Only define if __ultrix__.
  +     * emacs.c: Declare unexec_init_emacs_zone.
   
  -     * callproc.c (child_setup): Remove spurious *.
  +     * nsgui.h: Fix compiler warning about gnulib redefining verify.
   
  -     * lisp.h (Fget_text_property): Declare.
  -     (have_menus_p): Declare it here rather than in sys-dep header files.
  -     * macterm.h (have_menus_p):
  -     * msdos.h (have_menus_p):
  -     * xterm.h (have_menus_p): Remove.
  +     * nsselect.m (ns_get_local_selection): Change to extern (Bug#8842).
   
  -     * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
  -     (Fmake_variable_frame_local): Just check the variable's const-ness
  -     rather than checking nil or t.
  +     * nsmenu.m (ns_update_menubar): Remove useless setDelegate call
  +     on svcsMenu (Bug#8842).
   
  -2007-10-22  Jason Rumney  <jasonr@gnu.org>
  +     * nsfns.m (Fx_open_connection): Remove NSStringPboardType from
  +     ns_return_types.
  +     (Fns_list_services): Just return Qnil on 10.6, code not working there.
   
  -     * w32fns.c: Include math.h.
  -     (w32_abort): Declaration moved to nt/config.nt.
  +     * nsterm.m (QUTF8_STRING): Declare.
  +     (initFrameFromEmacs): Call registerServicesMenuSendTypes.
  +     (validRequestorForSendType): Return type is (id).
  +     Change indexOfObjectIdenticalTo to indexOfObject.
  +     Check if we have local selection before returning self (Bug#8842).
  +     (writeSelectionToPasteboard): Put local selection into paste board
  +     if we have a local selection (Bug#8842).
  +     (syms_of_nsterm): DEFSYM QUTF8_STRING.
   
  -     * s/ms-w32.h (HAVE_STDLIB_H): Define.
  -     (abort): Redefinition moved to nt/config.nt.
  +     * nsterm.h (MAC_OS_X_VERSION_10_6): Define here instead of nsterm.m.
  +     (ns_get_local_selection): Declare.
   
  -     * m/windowsnt.h: Remove.
  +2011-07-07  Lars Magne Ingebrigtsen  <larsi@gnus.org>
   
  -2007-10-22  Juanma Barranquero  <lekktu@gmail.com>
  +     * keymap.c (describe_map_tree): Don't insert a double newline at
  +     the end of the buffer (bug#1169) and return whether we inserted
  +     something.
   
  -     * emacs.c (Fdump_emacs): Fix typo in message.
  -     (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
  -     <installation-directory>: Reflow docstring.
  +     * callint.c (Fcall_interactively): Change "reading args" to
  +     "providing args" to try to clarify what it does (bug#1010).
   
  -2007-10-22  Juri Linkov  <juri@jurta.org>
  +2011-07-07  Kenichi Handa  <handa@m17n.org>
   
  -     * minibuf.c: Allow minibuffer default to be a list of default values.
  -     With empty input use the first element of this list as returned default.
  -     (string_to_object)
  -     (read_minibuf_noninteractive): If defalt is cons, set val to its car.
  -     (read_minibuf): If defalt is cons, set histstring to its car.
  -     (Fread_string): If default_value is cons, set val to its car.
  -     (Fread_buffer): If def is cons, use its car.
  -     (Fcompleting_read): If defalt is cons, set val to its car.
  +     * composite.c (composition_compute_stop_pos): Ignore a static
  +     composition starting before CHARPOS (Bug#8915).
   
  -2007-10-21  Michael Albinus  <michael.albinus@gmx.de>
  +     * xdisp.c (handle_composition_prop): Likewise.
   
  -     * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
  +2011-07-07  Eli Zaretskii  <eliz@gnu.org>
   
  -2007-10-20  Juanma Barranquero  <lekktu@gmail.com>
  +     * term.c (produce_glyphs) <xassert>: Allow IT_GLYPHLESS in it->what.
  +     (Bug#9015)
   
  -     * doc.c (Fdocumentation): Check for advice in all cases.
  +2011-07-07  Kenichi Handa  <handa@m17n.org>
   
  -2007-10-19  Chong Yidong  <cyd@stupidchicken.com>
  +     * character.h (unicode_category_t): New enum type.
  +
  +     * chartab.c (uniprop_decoder_t, uniprop_encoder_t): New types.
  +     (Qchar_code_property_table): New variable.
  +     (UNIPROP_TABLE_P, UNIPROP_GET_DECODER)
  +     (UNIPROP_COMPRESSED_FORM_P): New macros.
  +     (char_table_ascii): Uncompress the compressed values.
  +     (sub_char_table_ref): New arg is_uniprop.  Callers changed.
  +     Uncompress the compressed values.
  +     (sub_char_table_ref_and_range): Likewise.
  +     (char_table_ref_and_range): Uncompress the compressed values.
  +     (sub_char_table_set): New arg is_uniprop.  Callers changed.
  +     Uncompress the compressed values.
  +     (sub_char_table_set_range): Args changed.  Callers changed.
  +     (char_table_set_range): Adjuted for the above change.
  +     (map_sub_char_table): Delete args default_val and parent.  Add arg
  +     top.  Give decoded values to a Lisp function.
  +     (map_char_table): Adjust for the above change.  Give decoded
  +     values to a Lisp function.  Gcpro more variables.
  +     (uniprop_table_uncompress)
  +     (uniprop_decode_value_run_length): New functions.
  +     (uniprop_decoder, uniprop_decoder_count): New variables.
  +     (uniprop_get_decoder, uniprop_encode_value_character)
  +     (uniprop_encode_value_run_length, uniprop_encode_value_numeric):
  +     New functions.
  +     (uniprop_encoder, uniprop_encoder_count): New variables.
  +     (uniprop_get_encoder, uniprop_table)
  +     (Funicode_property_table_internal, Fget_unicode_property_internal)
  +     (Fput_unicode_property_internal): New functions.
  +     (syms_of_chartab): DEFSYM Qchar_code_property_table, defsubr
  +     Sunicode_property_table_internal, Sget_unicode_property_internal,
  +     and Sput_unicode_property_internal.  Defvar_lisp
  +     char-code-property-alist.
  +
  +     * composite.c (CHAR_COMPOSABLE_P): Adjust for the change of
  +     Vunicode_category_table.
  +
  +     * font.c (font_range): Adjust for the change of
  +     Vunicode_category_table.
  +
  +2011-07-07  Dan Nicolaescu  <dann@ics.uci.edu>
  +
  +     * m/iris4d.h: Remove file, move contents ...
  +     * s/irix6-5.h: ... here.
  +
  +2011-07-06  Paul Eggert  <eggert@cs.ucla.edu>
  +
  +     Remove unportable assumption about struct layout (Bug#8884).
  +     * alloc.c (mark_buffer):
  +     * buffer.c (reset_buffer_local_variables, Fbuffer_local_variables)
  +     (clone_per_buffer_values): Don't assume that
  +     sizeof (struct buffer) is a multiple of sizeof (Lisp_Object).
  +     This isn't true in general, and it's particularly not true
  +     if Emacs is configured with --with-wide-int.
  +     * buffer.h (FIRST_FIELD_PER_BUFFER, LAST_FIELD_PER_BUFFER):
  +     New macros, used in the buffer.c change.
  +
  +2011-07-05  Jan Djärv  <jan.h.d@swipnet.se>
  +
  +     * xsettings.c: Use both GConf and GSettings if both are available.
  +     (store_config_changed_event): Add comment.
  +     (dpyinfo_valid, store_font_name_changed, map_tool_bar_style)
  +     (store_tool_bar_style_changed): New functions.
  +     (store_monospaced_changed): Add comment.  Call dpyinfo_valid.
  +     (struct xsettings): Move font inside HAVE_XFT.
  +     (GSETTINGS_TOOL_BAR_STYLE, GSETTINGS_FONT_NAME): New defines.
  +     (GSETTINGS_MONO_FONT): Rename from SYSTEM_MONO_FONT.
  +     Move inside HAVE_XFT.
  +     (something_changed_gsettingsCB): Rename from something_changedCB.
  +     Check for changes in GSETTINGS_TOOL_BAR_STYLE and GSETTINGS_FONT_NAME
  +     also.
  +     (GCONF_TOOL_BAR_STYLE, GCONF_FONT_NAME): New defines.
  +     (GCONF_MONO_FONT): Rename from SYSTEM_MONO_FONT.  Move inside HAVE_XFT.
  +     (something_changed_gconfCB): Rename from something_changedCB.
  +     Check for changes in GCONF_TOOL_BAR_STYLE and GCONF_FONT_NAME also.
  +     (parse_settings): Move check for font inside HAVE_XFT.
  +     (read_settings, apply_xft_settings): Add comment.
  +     (read_and_apply_settings): Add comment.  Call map_tool_bar_style and
  +     store_tool_bar_style_changed.  Move check for font inside HAVE_XFT and
  +     call store_font_name_changed.
  +     (xft_settings_event): Add comment.
  +     (init_gsettings): Add comment.  Get values for GSETTINGS_TOOL_BAR_STYLE
  +     and GSETTINGS_FONT_NAME.  Move check for fonts within HAVE_XFT.
  +     (init_gconf): Add comment.  Get values for GCONF_TOOL_BAR_STYLE
  +     and GCONF_FONT_NAME.  Move check for fonts within HAVE_XFT.
  +     (xsettings_initialize): Call init_gsettings last.
  +     (xsettings_get_system_font, xsettings_get_system_normal_font):
  +     Add comment.
  +
  +2011-07-05  Paul Eggert  <eggert@cs.ucla.edu>
  +
  +     Random fixes.  E.g., (random) never returned negative values.
  +     * fns.c (Frandom): Use GET_EMACS_TIME for random seed, and add the
  +     subseconds part to the entropy, as that's a bit more random.
  +     Prefer signed to unsigned, since the signedness doesn't matter and
  +     in general we prefer signed.  When given a limit, use a
  +     denominator equal to INTMASK + 1, not to VALMASK + 1, because the
  +     latter isn't right if USE_2_TAGS_FOR_INTS.
  +     * sysdep.c (get_random): Return a value in the range 0..INTMASK,
  +     not 0..VALMASK.  Don't discard "excess" bits that random () returns.
  +
  +2011-07-04  Stefan Monnier  <monnier@iro.umontreal.ca>
  +
  +     * textprop.c (text_property_stickiness):
  +     Obey Vtext_property_default_nonsticky.
  +     (syms_of_textprop): Add `display' to Vtext_property_default_nonsticky.
  +     * w32fns.c (syms_of_w32fns):
  +     * xfns.c (syms_of_xfns): Don't Add `display' since it's there by default.
   
  -     * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
  +2011-07-04  Paul Eggert  <eggert@cs.ucla.edu>
   
  -2007-10-19  Richard Stallman  <rms@gnu.org>
  +     * fileio.c (barf_or_query_if_file_exists): Use S_ISDIR.
  +     This is more efficient than Ffile_directory_p and avoids a minor race.
   
  -     * doc.c (Fdocumentation): Check for and handle an advised function.
  +2011-07-04  Lars Magne Ingebrigtsen  <larsi@gnus.org>
   
  -2007-10-19  Juanma Barranquero  <lekktu@gmail.com>
  +     * buffer.c (Foverlay_put): Say what the return value is
  +     (bug#7835).
   
  -     * process.c (Fset_process_filter): Doc fix.
  +     * fileio.c (barf_or_query_if_file_exists): Check first if the file
  +     is a directory before asking whether to use the file name
  +     (bug#7564).
  +     (barf_or_query_if_file_exists): Make the "File is a directory"
  +     error be more correct.
   
  -2007-10-18  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * fns.c (Frequire): Remove the mention of the .gz files, since
  +     that's installation-specific, but keep the mention of
  +     `get-load-suffixes'.
   
  -     * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
  -     which caused key-translation-map to applied repeatedly (thus breaking
  -     double-mode).
  +2011-07-04  Paul Eggert  <eggert@cs.ucla.edu>
   
  -2007-10-17  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * editfns.c (Fformat_time_string): Don't assume strlen fits in int.
  +     Report string overflow if the output is too long.
   
  -     * xselect.c (x_own_selection, x_handle_selection_clear)
  -     (x_clear_frame_selections):
  -     * w32menu.c (list_of_panes, list_of_items):
  -     * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
  -     * textprop.c (validate_plist, interval_has_all_properties)
  -     (interval_has_some_properties, interval_has_some_properties_list)
  -     (add_properties, text_property_list):
  -     * process.c (Fget_buffer_process, list_processes_1, status_notify):
  -     * minibuf.c (Fassoc_string):
  -     * macselect.c (x_own_selection, x_clear_frame_selections)
  -     (Fx_disown_selection_internal):
  -     * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
  -     Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
  +2011-07-04  Juanma Barranquero  <lekktu@gmail.com>
   
  -2007-10-17  Chong Yidong  <cyd@stupidchicken.com>
  +     * gnutls.c (Fgnutls_boot): Don't mention :verify-error.
  +     (syms_of_gnutls): Remove duplicate DEFSYM for
  +     Qgnutls_bootprop_verify_hostname_error, an error for
  +     Qgnutls_bootprop_verify_error (which is no longer used).
   
  -     * process.c: Link to libs for calling res_init() if available.
  -     (Fmake_network_process): Call res_init() before getaddrinfo or
  -     gethostbyname, if possible.
  +     * eval.c (find_handler_clause): Remove parameters `sig' and `data',
  +     unused since 2011-01-26T20:02:07Z!monnier@iro.umontreal.ca.  All callers changed.
  +     Also (re)move comments that are misplaced or no longer relevant.
   
  -2007-10-17  Stefan Monnier  <monnier@iro.umontreal.ca>
  +2011-07-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
   
  -     * lread.c (read1): Set pvectype for char_tables.
  +     * callint.c (Finteractive): Clarify the meaning of "@" (bug#8813).
   
  -     * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
  -     (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
  -     Add type checks.
  -     (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
  +2011-07-03  Chong Yidong  <cyd@stupidchicken.com>
   
  -     * alloc.c (free_misc): Use XMISCTYPE.
  -     (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
  +     * xfaces.c (Finternal_merge_in_global_face): Modify the foreground
  +     and background color parameters if they have been changed.
   
  -2007-10-17  Glenn Morris  <rgm@gnu.org>
  +2011-07-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
   
  -     * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
  -     (syms_of_minibuf): Add Qcompletion_ignore_case.
  -     * dired.c (Qcompletion_ignore_case): Change to external.
  -     (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
  -     * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
  -     (Fread_file_name): Use it rather than intern'ing.
  +     * editfns.c (Fformat): Clarify the - and 0 flags (bug#6659).
   
  -     * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
  -     (Fread_coding_system): Ignore case of user input.
  +2011-07-03  Paul Eggert  <eggert@cs.ucla.edu>
   
  -2007-10-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  +     * xsettings.c (SYSTEM_FONT): Define only when used.
  +     No need to define when HAVE_GSETTINGS || !HAVE_XFT.
   
  -     * xdisp.c (handle_display_prop): Ignore display specs after
  -     replacing one when string text is being replaced.
  -     (handle_single_display_spec): Pretend as if characters with display
  -     property haven't been consumed only when buffer text is being replaced.
  +     * keymap.c (access_keymap_1): Now static.
   
  -2007-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
  +2011-07-02  Chong Yidong  <cyd@stupidchicken.com>
   
  -     * xfns.c (Fx_create_frame, Fx_display_list):
  -     * window.c (window_fixed_size_p, enlarge_window)
  -     (shrink_window_lowest_first):
  -     * macterm.c (init_font_name_table):
  -     * macfns.c (Fx_create_frame, Fx_display_list):
  -     * lread.c (close_load_descs):
  -     * keyboard.c (read_char_x_menu_prompt):
  -     * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
  -     * coding.c (code_convert_region_unwind): Test the type of an object
  -     rather than just !NILP before extracting data from it.
  +     * keyboard.c (command_loop_1): If a down-mouse event is unbound,
  +     leave any prefix arg for the up event (Bug#1586).
   
  -     * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
  +2011-07-02  Lars Magne Ingebrigtsen  <larsi@gnus.org>
   
  -     * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
  -     (XMISCANY): New macro.
  -     (XMISCTYPE): Use it.
  -     (struct Lisp_Misc_Any): New type.
  -     (union Lisp_Misc): Use it.
  -     (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
  -     * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
  -     (find_symbol_value, set_internal, default_value, Fset_default)
  -     (Fmake_variable_buffer_local, Fmake_local_variable)
  -     (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
  -     (Flocal_variable_if_set_p, Fvariable_binding_locus):
  -     The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
  -     * alloc.c (allocate_buffer): Set the size and tag.
  -     (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
  -     Use XMISCANY.
  -     (die): Follow the GNU convention for error messages.
  -     * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
  -     * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
  -     tag any more.
  -     (set_buffer_internal_1):
  -     * frame.c (store_frame_param):
  -     * eval.c (specbind):
  -     * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
  +     * lread.c (syms_of_lread): Mention single symbols defined by
  +     `defvar' or `defconst' (bug#7154).
   
  -     * doc.c (Fsnarf_documentation): Simplify.
  +     * fns.c (Frequire): Mention .el.gz files (bug#7314).
  +     (Frequire): Mention get-load-suffixes.
   
  -2007-10-14  Juanma Barranquero  <lekktu@gmail.com>
  +2011-07-02  Martin Rudalics  <rudalics@gmx.at>
   
  -     * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
  -     (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
  +     * window.h (window): Remove clone_number slot.
  +     * window.c (Fwindow_clone_number, Fset_window_clone_number):
  +     Remove.
  +     (make_parent_window, make_window, saved_window)
  +     (Fset_window_configuration, save_window_save): Don't deal with
  +     clone numbers.
  +     * buffer.c (Qclone_number): Remove declaration.
  +     (sort_overlays, overlay_strings): Don't deal with clone numbers.
   
  -2007-10-14  Stefan Monnier  <monnier@iro.umontreal.ca>
  +2011-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
   
  -     * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
  +     Add multiple inheritance to keymaps.
  +     * keymap.c (Fmake_composed_keymap): New function.
  +     (Fset_keymap_parent): Simplify.
  +     (fix_submap_inheritance): Remove.
  +     (access_keymap_1): New function extracted from access_keymap to handle
  +     embedded parents and handle lists of maps.
  +     (access_keymap): Use it.
  +     (Fkeymap_prompt, map_keymap_internal, map_keymap, store_in_keymap)
  +     (Fcopy_keymap): Handle embedded parents.
  +     (Fcommand_remapping, define_as_prefix): Simplify.
  +     (Fkey_binding): Simplify.
  +     (syms_of_keymap): Move minibuffer-local-completion-map,
  +     minibuffer-local-filename-completion-map,
  +     minibuffer-local-must-match-map, and
  +     minibuffer-local-filename-must-match-map to Elisp.
  +     (syms_of_keymap): Defsubr make-composed-keymap.
  +     * keyboard.c (menu_bar_items): Use map_keymap_canonical.
  +     (parse_menu_item): Trivial simplification.
   
  -2007-10-14  Juanma Barranquero  <lekktu@gmail.com>
  +2011-07-01  Glenn Morris  <rgm@gnu.org>
   
  -     * eval.c (do_autoload): Don't save autoloads.
  +     * Makefile.in (SETTINGS_LIBS): Fix typo.
   
  -     * data.c (Ffset): Save autoload of the function being set.
  +2011-07-01  Kazuhiro Ito  <kzhr@d1.dion.ne.jp>  (tiny patch)
   
  -2007-10-07  John Paul Wallington  <jpw@pobox.com>
  +     * coding.c (Fencode_coding_string): Record the last coding system
  +     used, as the function doc string says (bug#8738).
   
  -     * xfns.c (x_create_tip_frame): Set the `display-type' frame
  -     parameter before setting up faces.
  +2011-07-01  Jan Djärv  <jan.h.d@swipnet.se>
   
  -2007-10-13  Eli Zaretskii  <eliz@gnu.org>
  +     * xsettings.c (store_monospaced_changed): Take new font as arg and
  +     check for change against current_mono_font.
  +     (EMACS_TYPE_SETTINGS): Remove this and related defines.
  +     (emacs_settings_constructor, emacs_settings_get_property)
  +     (emacs_settings_set_property, emacs_settings_class_init)
  +     (emacs_settings_init, gsettings_obj): Remove.
  +     (something_changedCB): New function for HAVE_GSETTINGS.
  +     (something_changedCB): HAVE_GCONF: Call store_monospaced_changed
  +     with value as argument.
  +     (init_gsettings): Check that GSETTINGS_SCHEMA exists before calling
  +     g_settings_new (Bug#8967).  Do not create gsettings_obj.
  +     Remove calls to g_settings_bind.  Connect something_changedCB to
  +     "changed".
   
  -     * ccl.c (Fregister_code_conversion_map):
  -     * keyboard.c (append_tool_bar_item): Reformat last change.
  +     * xgselect.c: Add defined (HAVE_GSETTINGS).
  +     (xgselect_initialize): Ditto.
   
  -     * lisp.h (eabs): Rename from `abs'.  All callers changed.
  +     * process.c: Add defined (HAVE_GSETTINGS) for xgselect.h
  +     (wait_reading_process_output): Add defined (HAVE_GSETTINGS) for
  +     xg_select.
   
  -2007-10-05  Dmitry Antipov  <dmantipov@yandex.ru>
  +2011-07-01  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * buffer.c (add_overlay_mod_hooklist):
  -     * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
  -     * fontset.c (make_fontset):
  -     * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
  -     (append_tool_bar_item):
  -     * macmenu.c (grow_menu_items):
  -     * w32menu.c (grow_menu_items):
  -     * xmenu.c (grow_menu_items): Use larger_vector.
  +     * eval.c (struct backtrace): Simplify and port the data structure.
  +     Do not assume that "int nargs : BITS_PER_INT - 2;" produces a
  +     signed bit field, as this assumption is not portable and it makes
  +     Emacs crash when compiled with Sun C 5.8 on sparc.  Do not use
  +     "char debug_on_exit : 1" as this is not portable either; instead,
  +     use the portable "unsigned int debug_on_exit : 1".  Remove unused
  +     member evalargs.  Remove obsolete comments about cc bombing out.
  +
  +2011-06-30  Jan Djärv  <jan.h.d@swipnet.se>
  +
  +     * xsettings.c: Include glib-object.h, gio/gio.h if HAVE_GSETTINGS.
  +     Let HAVE_GSETTINGS override HAVE_GCONF.
  +     (store_monospaced_changed): New function.
  +     (EMACS_SETTINGS): A new type derived from GObject to handle
  +     GSettings notifications.
  +     (emacs_settings_constructor, emacs_settings_get_property)
  +     (emacs_settings_set_property, emacs_settings_class_init):
  +     New functions.
  +     (gsettings_client, gsettings_obj): New variables.
  +     (GSETTINGS_SCHEMA): New define.
  +     (something_changedCB): Call store_monospaced_changed.
  +     (init_gsettings): New function.
  +     (xsettings_initialize): Call init_gsettings.
  +     (syms_of_xsettings): Initialize gsettings_client, gsettings_obj
  +     to NULL.
   
  -2007-10-13  Eli Zaretskii  <eliz@gnu.org>
  +     * Makefile.in (SETTINGS_CFLAGS, SETTINGS_LIBS): Rename from
  +     GCONF_CFLAGS/LIBS.
   
  -     * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
  -     selected frame'' on MSDOS).
  +2011-06-29  Martin Rudalics  <rudalics@gmx.at>
   
  -2007-10-12  Martin Rudalics  <rudalics@gmx.at>
  +     * window.c (resize_root_window, grow_mini_window)
  +     (shrink_mini_window): Rename Qresize_root_window to
  +     Qwindow_resize_root_window and Qresize_root_window_vertically to
  +     Qwindow_resize_root_window_vertically.
   
  -     * frame.c (Qexplicit_name): New variable.
  -     (x_report_frame_params): Report it in parameter alist.
  -     (syms_of_frame): Intern and staticpro it.
  +2011-06-28  Paul Eggert  <eggert@cs.ucla.edu>
   
  -2007-10-10  Patrick Mahan  <mahan@mahan.org>  (tiny change)
  +     * gnutls.c (Qgnutls_bootprop_verify_error): Remove unused var.
   
  -     * macfns.c (x_create_tip_frame): Set terminal for frame.
  +2011-06-27  Juanma Barranquero  <lekktu@gmail.com>
   
  -2007-10-10  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * makefile.w32-in: Redesign dependencies so they reflect more
  +     clearly which files are directly included by each source file,
  +     and not through other includes.
   
  -     * frame.c (Qenvironment): Remove.
  -     (syms_of_frame) <Qenvironment>: Don't initialize.
  -     (Fdelete_frame): Don't treat the `environment' param specially.
  -     * frame.h (Qenvironment): Don't declare.
  -     * callproc.c (set_initial_environment): Don't set unused frame param.
  +2011-06-27  Martin Rudalics  <rudalics@gmx.at>
   
  -     * frame.c (Fframe_with_environment): Remove.
  -     (syms_of_frame) <Sframe_with_environment>: Don't declare.
  +     * buffer.c (Qclone_number): Declare static and DEFSYM it.
  +     (sort_overlays, overlay_strings): When an overlay's clone number
  +     matches the window's clone number process the overlay even if
  +     the overlay's window property doesn't match the current window.
   
  -     * lisp.h (Fframe_with_environment): Don't declare.
  +     * window.c (Fwindow_vchild): Rename to Fwindow_top_child.
  +     (Fwindow_hchild): Rename to Fwindow_left_child.
  +     (Fwindow_next): Rename to Fwindow_next_sibling.
  +     (Fwindow_prev): Rename to Fwindow_prev_sibling.
  +     (resize_window_check): Rename to window_resize_check.
  +     (resize_window_apply): Rename to window_resize_apply.
  +     (Fresize_window_apply): Rename to Fwindow_resize_apply.
  +     (Fdelete_other_windows_internal, resize_frame_windows)
  +     (Fsplit_window_internal, Fdelete_window_internal)
  +     (grow_mini_window, shrink_mini_window)
  +     (Fresize_mini_window_internal): Fix callers accordingly.
   
  -2007-10-10  Juanma Barranquero  <lekktu@gmail.com>
  +2011-06-26  Jan Djärv  <jan.h.d@swipnet.se>
   
  -     * indent.c (indent_tabs_mode, last_known_column)
  -     (last_known_column_modified): Make static.
  -     (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
  +     * emacsgtkfixed.h: State that this is only used with Gtk+3.
  +     (emacs_fixed_set_min_size): Remove.
  +     (emacs_fixed_new): Take frame as argument.
   
  -2007-10-10  Katsumi Yamaoka  <yamaoka@jpl.org>
  +     * emacsgtkfixed.c: State that this is only used with Gtk+3.
  +     (_EmacsFixedPrivate): Remove minwidth/height.
  +     Add struct frame *f.
  +     (emacs_fixed_init): Initialize priv->f.
  +     (get_parent_class, emacs_fixed_set_min_size): Remove.
  +     (emacs_fixed_new): Set priv->f to argument.
  +     (emacs_fixed_get_preferred_width)
  +     (emacs_fixed_get_preferred_height): Use min_width/height from
  +     frames size_hint to set minimum and natural (Bug#8919).
  +     (XSetWMSizeHints, XSetWMNormalHints): Override these functions
  +     and use min_width/height from frames size_hint to set
  +     min_width/height (Bug#8919).
   
  -     * puresize.h (BASE_PURESIZE): Increase to 1170000.
  +     * gtkutil.c (xg_create_frame_widgets): Pass f to emacs_fixed_new.
  +     (x_wm_set_size_hint): Remove call to emacs_fixed_set_min_size.
  +     Fix indentation.
   
  -2007-10-09  Jason Rumney  <jasonr@gnu.org>
  +2011-06-26  Eli Zaretskii  <eliz@gnu.org>
   
  -     * w32term.c (x_set_window_size): Disable code that attempts to tell
  -     Lisp code about a size change before it actually happens.
  +     * bidi.c (bidi_paragraph_init): Test for ZV_BYTE before calling
  +     bidi_at_paragraph_end, since fast_looking_at doesn't like to be
  +     called at ZV.
   
  -2007-10-09  Richard Stallman  <rms@gnu.org>
  +2011-06-26  Chong Yidong  <cyd@stupidchicken.com>
   
  -     * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
  -     return HANDLED_RETURN.
  +     * process.c (wait_reading_process_output): Bypass select if
  +     waiting for a cell while ignoring keyboard input, and input is
  +     pending.  Suggested by Jan Djärv (Bug#8869).
   
  -2007-10-08  Martin Rudalics  <rudalics@gmx.at>
  +2011-06-25  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
  -     when there's an unread command event.
  +     Use gnulib's dup2 module instead of rolling our own.
  +     * sysdep.c (dup2) [!HAVE_DUP2]: Remove; gnulib now does this.
   
  -     * frame.c (focus_follows_mouse): Move here from frame.el to allow
  -     window autoselection act appropriately when leaving selected frame.
  -     (syms_of_frame): Initialize focus_follows_mouse.
  -     * frame.h (focus_follows_mouse): Extern it.
  -     * macterm.c (XTread_socket): When focus_follows_mouse is nil
  -     make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
  -     * msdos.c (dos_rawgetc): Likewise.
  -     * w32term.c (w32_read_socket): Likewise.
  -     * xterm.c (handle_one_xevent): Likewise.
  -     * xdisp.c (syms_of_xdisp): In doc-string of
  -     mouse-autoselect-window mention focus-follows-mouse.
  +2011-06-25  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
   
  -2007-10-08  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  +     * dispnew.c (scrolling_window): Before scrolling, turn off a
  +     mouse-highlight in the window being scrolled.
   
  -     * macterm.c (mac_load_query_font): Fix missing return value.
  -     [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
  -     Add BLOCK_INPUT.
  +2011-06-24  Juanma Barranquero  <lekktu@gmail.com>
   
  -2007-10-08  Richard Stallman  <rms@gnu.org>
  +     Move DEFSYM to lisp.h and use everywhere.
   
  -     * xdisp.c (get_window_cursor_type): Implement documented behavior
  -     for cursor-in-non-selected-windows = t.
  +     * character.h (DEFSYM): Move declaration...
  +     * lisp.h (DEFSYM): ...here.
   
  -2007-10-08  Jason Rumney  <jasonr@gnu.org>
  +     * gnutls.c:
  +     * minibuf.c:
  +     * w32menu.c:
  +     * w32proc.c:
  +     * w32select.c: Don't include character.h.
   
  -     * w32.c (w32_get_resource): Always close registry keys.
  +     * alloc.c (syms_of_alloc):
  +     * buffer.c (syms_of_buffer):
  +     * bytecode.c (syms_of_bytecode):
  +     * callint.c (syms_of_callint):
  +     * casefiddle.c (syms_of_casefiddle):
  +     * casetab.c (init_casetab_once):
  +     * category.c (init_category_once, syms_of_category):
  +     * ccl.c (syms_of_ccl):
  +     * cmds.c (syms_of_cmds):
  +     * composite.c (syms_of_composite):
  +     * dbusbind.c (syms_of_dbusbind):
  +     * dired.c (syms_of_dired):
  +     * dispnew.c (syms_of_display):
  +     * doc.c (syms_of_doc):
  +     * editfns.c (syms_of_editfns):
  +     * emacs.c (syms_of_emacs):
  +     * eval.c (syms_of_eval):
  +     * fileio.c (syms_of_fileio):
  +     * fns.c (syms_of_fns):
  +     * frame.c (syms_of_frame):
  +     * fringe.c (syms_of_fringe):
  +     * insdel.c (syms_of_insdel):
  +     * keymap.c (syms_of_keymap):
  +     * lread.c (init_obarray, syms_of_lread):
  +     * macros.c (syms_of_macros):
  +     * msdos.c (syms_of_msdos):
  +     * print.c (syms_of_print):
  +     * process.c (syms_of_process):
  +     * search.c (syms_of_search):
  +     * sound.c (syms_of_sound):
  +     * syntax.c (init_syntax_once, syms_of_syntax):
  +     * terminal.c (syms_of_terminal):
  +     * textprop.c (syms_of_textprop):
  +     * undo.c (syms_of_undo):
  +     * w32.c (globals_of_w32):
  +     * window.c (syms_of_window):
  +     * xdisp.c (syms_of_xdisp):
  +     * xfaces.c (syms_of_xfaces):
  +     * xfns.c (syms_of_xfns):
  +     * xmenu.c (syms_of_xmenu):
  +     * xsettings.c (syms_of_xsettings):
  +     * xterm.c (syms_of_xterm): Use DEFSYM.
  +
  +2011-06-24  Teodor Zlatanov  <tzz@lifelogs.com>
  +
  +     * gnutls.c (syms_of_gnutls): Use the DEFSYM macro from character.h.
  +
  +2011-06-23  Paul Eggert  <eggert@cs.ucla.edu>
  +
  +     Integer and buffer overflow fixes (Bug#8873).
  +
  +     * print.c (printchar, strout): Check for string overflow.
  +     (PRINTPREPARE, printchar, strout):
  +     Don't set size unless allocation succeeds.
  +
  +     * minibuf.c (read_minibuf_noninteractive): Use ptrdiff_t, not int,
  +     for sizes.  Check for string overflow more accurately.
  +     Simplify newline removal at end; this suppresses a GCC 4.6.0 warning.
  +
  +     * macros.c: Integer and buffer overflow fixes.
  +     * keyboard.h (struct keyboard.kbd_macro_bufsize):
  +     * macros.c (Fstart_kbd_macro, store_kbd_macro_char):
  +     Use ptrdiff_t, not int, for sizes.
  +     Don't increment bufsize until after realloc succeeds.
  +     Check for size-calculation overflow.
  +     (Fstart_kbd_macro): Use EMACS_INT, not int, for XINT result.
  +
  +     * lisp.h (DEFVAR_KBOARD): Use offsetof instead of char * finagling.
  +
  +     * lread.c: Integer overflow fixes.
  +     (read_integer): Radix is now EMACS_INT, not int,
  +     to improve quality of diagnostics for out-of-range radices.
  +     Calculate buffer size correctly for out-of-range radices.
  +     (read1): Check for integer overflow in radices, and in
  +     read-circle numbers.
  +     (read_escape): Avoid int overflow.
  +     (Fload, openp, read_buffer_size, read1)
  +     (substitute_object_recurse, read_vector, read_list, map_obarray):
  +     Use ptrdiff_t, not int, for sizes.
  +     (read1): Use EMACS_INT, not int, for sizes.
  +     Check for size overflow.
  +
  +     * image.c (cache_image): Check for size arithmetic overflow.
  +
  +     * lread.c: Integer overflow issues.
  +     (saved_doc_string_size, saved_doc_string_length)
  +     (prev_saved_doc_string_size, prev_saved_doc_string_length):
  +     Now ptrdiff_t, not int.
  +     (read1): Don't assume doc string length fits in int.  Check for
  +     out-of-range doc string lengths.
  +     (read_list): Don't assume file position fits in int.
  +     (read_escape): Check for hex character overflow.
  +
  +2011-06-22  Leo Liu  <sdl.web@gmail.com>
  +
  +     * minibuf.c (Fcompleting_read_default, Vcompleting_read_function):
  +     Move to minibuffer.el.
  +
  +2011-06-22  Paul Eggert  <eggert@cs.ucla.edu>
  +
  +     Fixes for GLYPH_DEBUG found by GCC 4.6.0 static checking.
  +     The following patches are for when GLYPH_DEBUG && !XASSERT.
  +     * dispextern.h (trace_redisplay_p, dump_glyph_string):
  +     * dispnew.c (flush_stdout):
  +     * xdisp.c (dump_glyph_row, dump_glyph_matrix, dump_glyph):
  +     Mark as externally visible.
  +     * dispnew.c (check_window_matrix_pointers): Now static.
  +     * dispnew.c (window_to_frame_vpos):
  +     * xfns.c (unwind_create_frame):
  +     * xterm.c (x_check_font): Remove unused local.
  +     * scroll.c (CHECK_BOUNDS):
  +     * xfaces.c (cache_fache): Rename local to avoid shadowing.
  +     * xfns.c, w32fns.c (image_cache_refcount, dpyinfo_refcount): Now static.
  +     * xdisp.c (check_window_end): Now a no-op if !XASSERTS.
  +     (debug_first_unchanged_at_end_vpos, debug_last_unchanged_at_beg_vpos)
  +     (debug_dvpos, debug_dy, debug_delta, debug_delta_bytes, debug_end_vpos):
  +     Now static.
  +     (debug_method_add): Use va_list and vsprintf rather than relying
  +     on undefined behavior with wrong number of arguments.
  +     (dump_glyph, dump_glyph_row, Fdump_glyph_matrix):
  +     Don't assume ptrdiff_t and EMACS_INT are the same width as int.
  +     In this code, it's OK to assume C99 behavior for ptrdiff_t formats
  +     since we're not interested in debugging glyphs with old libraries.
  +     * xfaces.c (cache_face): Move debugging code earlier; this pacifies
  +     GCC 4.6.0's static checking.
  +
  +2011-06-22  Paul Eggert  <eggert@cs.ucla.edu>
  +
  +     Integer overflow and signedness fixes (Bug#8873).
  +     A few related buffer overrun fixes, too.
  +
  +     * font.c (font_score): Use EMACS_INT, not int, to store XINT value.
  +
  +     * dispextern.h (struct face.stipple):
  +     * image.c (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
  +     (x_bitmap_mask, x_allocate_bitmap_record)
  +     (x_create_bitmap_from_data, x_create_bitmap_from_file)
  +     (x_destroy_bitmap, x_destroy_all_bitmaps, x_create_bitmap_mask)
  +     (x_create_bitmap_from_xpm_data):
  +     * nsterm.h (struct ns_display_info.bitmaps_size, .bitmaps_last):
  +     * w32term.h (struct w32_display_info.icon_bitmap_id, .bitmaps_size)
  +     (.bitmaps_last):
  +     * xfaces.c (load_pixmap):
  +     * xterm.c (x_bitmap_icon, x_wm_set_icon_pixmap):
  +     * xterm.h (struct x_display_info.icon_bitmap_id, .bitmaps_size)
  +     (.bitmaps_last, struct x_output.icon_bitmap):
  +     Use ptrdiff_t, not int, for bitmap indexes.
  +     (x_allocate_bitmap_record): Check for size overflow.
  +     * dispextern.h, lisp.h: Adjust to API changes elsewhere.
  +
  +     Use ptrdiff_t, not int, for overlay counts.
  +     * buffer.h (overlays_at, sort_overlays, GET_OVERLAYS_AT):
  +     * editfns.c (overlays_around, get_pos_property):
  +     * textprop.c (get_char_property_and_overlay):
  +     * xdisp.c (next_overlay_change, note_mouse_highlight):
  +     * xfaces.c (face_at_buffer_position):
  +     * buffer.c (OVERLAY_COUNT_MAX): New macro.
  +     (overlays_at, overlays_in, sort_overlays, Foverlays_at)
  +     (Fnext_overlay_change, Fprevious_overlay_change)
  +     (mouse_face_overlay_overlaps, Foverlays_in):
  +     Use ptrdiff_t, not int, for sizes.
  +     (overlays_at, overlays_in): Check for size-calculation overflow.
  +
  +     * xterm.c (xim_initialize, same_x_server): Strlen may not fit in int.
  +
  +     * xsmfns.c (smc_save_yourself_CB, x_session_initialize): Avoid strlen.
  +     (x_session_initialize): Do not assume string length fits in int.
  +
  +     * xsettings.c (apply_xft_settings): Fix potential buffer overrun.
  +     This is unlikely, but can occur if DPI is outlandish.
  +
  +     * xsettings.c (Ffont_get_system_normal_font, Ffont_get_system_font):
  +     * xselect.c (Fx_get_atom_name): Avoid need for strlen.
  +
  +     * xrdb.c: Don't assume strlen fits in int; avoid some strlens.
  +     * xrdb.c (magic_file_p, search_magic_path):
  +     Omit last arg SUFFIX; it was always 0.  All callers changed.
  +     (magic_file_p): Use ptrdiff_t, not int.  Check for size overflow.
  +
  +     * xfont.c (xfont_match): Avoid need for strlen.
  +
  +     * xfns.c: Don't assume strlen fits in int.
  +     (xic_create_fontsetname, x_window): Use ptrdiff_t, not int.
  +
  +     * xdisp.c (message_log_check_duplicate): Return intmax_t,
  +     not unsigned long, as we prefer signed integers.  All callers changed.
  +     Detect integer overflow in repeat count.
  +     (message_dolog): Don't assume print length fits in 39 bytes.
  +     (display_mode_element): Don't assume strlen fits in int.
  +
  +     * termcap.c: Don't assume sizes fit in int and never overflow.
  +     (struct termcap_buffer, tgetent): Use ptrdiff_t, not int, for sizes.
  +     (gobble_line): Check for size-calculation overflow.
  +
  +     * minibuf.c (Fread_buffer):
  +     * lread.c (intern, intern_c_string):
  +     * image.c (xpm_scan) [HAVE_NS && !HAVE_XPM]:
  +     Don't assume string length fits in int.
  +
  +     * keyboard.c (parse_tool_bar_item):
  +     * gtkutil.c (style_changed_cb): Avoid need for strlen.
  +
  +     * font.c: Don't assume string length fits in int.
  +     (font_parse_xlfd, font_parse_fcname, font_unparse_fcname):
  +     Use ptrdiff_t, not int.
  +     (font_intern_prop): Don't assume string length fits in int.
  +     Don't assume integer property fits in fixnum.
  +     * font.h (font_intern_prop): 2nd arg is now ptrdiff_t, not int.
  +
  +     * filelock.c: Fix some buffer overrun and integer overflow issues.
  +     (get_boot_time): Don't assume gzip command string fits in 100 bytes.
  +     Reformulate so as not to need the command string.
  +     Invoke gzip -cd rather than gunzip, as it's more portable.
  +     (lock_info_type, lock_file_1, lock_file):
  +     Don't assume pid_t and time_t fit in unsigned long.
  +     (LOCK_PID_MAX): Remove; we now use more-reliable bounds.
  +     (current_lock_owner): Prefer signed type for sizes.
  +     Use memcpy, not strncpy, where memcpy is what is really wanted.
  +     Don't assume (via atoi) that time_t and pid_t fit in int.
  +     Check for time_t and/or pid_t out of range, e.g., via a network share.
  +     Don't alloca where an auto var works fine.
  +
  +     * fileio.c: Fix some integer overflow issues.
  +     (file_name_as_directory, Fexpand_file_name, Fsubstitute_in_file_name):
  +     Don't assume string length fits in int.
  +     (directory_file_name): Don't assume string length fits in long.
  +     (make_temp_name): Don't assume pid fits in int, or that its print
  +     length is less than 20.
  +
  +     * data.c (Fsubr_name): Rewrite to avoid a strlen call.
  +
  +     * coding.c (make_subsidiaries): Don't assume string length fits in int.
  +
  +     * callproc.c (child_setup): Rewrite to avoid two strlen calls.
  +
  +     * process.c (Fformat_network_address): Use EMACS_INT, not EMACS_UINT.
  +     We prefer signed integers, even for size calculations.
  +
  +     * emacs.c: Don't assume string length fits in 'int'.
  +     (DEFINE_DUMMY_FUNCTION, sort_args): Use ptrdiff_t, not int.
  +     (main): Don't invoke strlen when not needed.
  +
  +     * dbusbind.c (XD_ERROR): Don't arbitrarily truncate string.
  +     (XD_DEBUG_MESSAGE): Don't waste a byte.
  +
  +     * callproc.c (getenv_internal_1, getenv_internal)
  +     (Fgetenv_internal):
  +     * buffer.c (init_buffer): Don't assume string length fits in 'int'.
  +
  +     * lread.c (invalid_syntax): Omit length argument.
  +     All uses changed.  This doesn't fix a bug, but it simplifies the
  +     code away from its former Hollerith-constant appearance, and it's
  +     one less 'int' to worry about when looking at integer-overflow issues.
  +     (string_to_number): Simplify 2011-04-26 change by invoking xsignal1.
  +
  +     * lisp.h (DEFUN): Remove bogus use of sizeof (struct Lisp_Subr).
  +     This didn't break anything, but it didn't help either.
  +     It's confusing to put a bogus integer in a place where the actual
  +     value does not matter.
  +     (LIST_END_P): Remove unused macro and its bogus comment.
  +     (make_fixnum_or_float): Remove unnecessary cast to EMACS_INT.
   
  -2007-10-08  Jason Rumney  <jasonr@gnu.org>
  +     * lisp.h (union Lisp_Object.i): EMACS_INT, not EMACS_UINT.
  +     This is for consistency with the ordinary, non-USE_LISP_UNION_TYPE,
  +     implementation.
  +     (struct Lisp_Bool_Vector.size): EMACS_INT, not EMACS_UINT.
  +     We prefer signed types, and the value cannot exceed the EMACS_INT
  +     range anyway (because otherwise the length would not be representable).
  +     (XSET) [USE_LISP_UNION_TYPE]: Use uintptr_t and intptr_t,
  +     not EMACS_UINT and EMACS_INT, when converting pointer to integer.
  +     This avoids a GCC warning when WIDE_EMACS_INT.
  +
  +     * indent.c (sane_tab_width): New function.
  +     (current_column, scan_for_column, Findent_to, position_indentation)
  +     (compute_motion): Use it.  This is just for clarity.
  +     (Fcompute_motion): Don't assume hscroll and tab offset fit in int.
  +
  +     * image.c (xbm_image_p): Don't assume stated width, height fit in int.
  +
  +     * lisp.h (lint_assume): New macro.
  +     * composite.c (composition_gstring_put_cache):
  +     * ftfont.c (ftfont_shape_by_flt): Use it to pacify GCC 4.6.0.
  +
  +     * editfns.c, insdel.c:
  +     Omit unnecessary forward decls, to simplify future changes.
  +
  +     * ftfont.c (ftfont_shape_by_flt): Use signed integers for lengths.
  +
  +     * font.c (Ffont_shape_gstring): Don't assume glyph len fits in 'int'.
  +
  +     * fns.c (Ffillarray): Don't assume bool vector size fits in 'int'.
  +     Use much-faster test for byte-length change.
  +     Don't assume string byte-length fits in 'int'.
  +     Check that character arg fits in 'int'.
  +     (mapcar1): Declare byte as byte, for clarity.
  +
  +     * alloc.c (Fmake_bool_vector): Avoid unnecessary multiplication.
  +
  +     * fns.c (concat): Catch string overflow earlier.
  +     Do not rely on integer wraparound.
  +
  +     * dispextern.h (struct it.overlay_strings_charpos)
  +     (struct it.selective): Now EMACS_INT, not int.
  +     * xdisp.c (forward_to_next_line_start)
  +     (back_to_previous_visible_line_start)
  +     (reseat_at_next_visible_line_start, next_element_from_buffer):
  +     Don't arbitrarily truncate the value of 'selective' to int.
  +
  +     * xdisp.c (init_iterator): Use XINT, not XFASTINT; it might be < 0.
  +
  +     * composite.c: Don't truncate sizes to 'int'.
  +     (composition_gstring_p, composition_reseat_it)
  +     (composition_adjust_point): Use EMACS_INT, not int.
  +     (get_composition_id, composition_gstring_put_cache): Use EMACS_INT,
  +     not EMACS_UINT, for indexes.
   
  -     * makefile.w32-in (LIBS): Add COMCTL32.
  +     * category.h (CATEGORY_SET_P): Remove unnecessary cast to EMACS_INT.
   
  -     * w32fns.c (globals_of_w32fns): Init common controls.
  +     * buffer.c: Include <verify.h>.
  +     (struct sortvec.priority, struct sortstr.priority):
  +     Now EMACS_INT, not int.
  +     (compare_overlays, cmp_for_strings): Avoid subtraction overflow.
  +     (struct sortstr.size, record_overlay_string)
  +     (struct sortstrlist.size, struct sortlist.used):
  +     Don't truncate size to int.
  +     (record_overlay_string): Check for size-calculation overflow.
  +     (init_buffer_once): Check at compile-time, not run-time.
   
  -2007-10-08  Richard Stallman  <rms@gnu.org>
  +2011-06-22  Jim Meyering  <meyering@redhat.com>
   
  -     * image.c (our_memory_buffer): Rename from omfib_buffer.
  +     Don't leak an XBM-image-sized buffer
  +     * image.c (xbm_load): Free the image buffer after using it.
   
  -2007-10-08  Richard Stallman  <rms@gnu.org>
  +2011-06-21  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * buffer.c (Foverlays_at): Doc fix.
  +     Port to Sun C.
  +     * composite.c (find_automatic_composition): Omit needless 'return 0;'
  +     that Sun C diagnosed.
  +     * fns.c (secure_hash): Fix pointer signedness issue.
  +     * intervals.c (static_offset_intervals): New function.
  +     (offset_intervals): Use it.
   
  -2007-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
  +2011-06-21  Leo Liu  <sdl.web@gmail.com>
   
  -     * fns.c (Fplist_put): Preserve uneven tail data.
  +     * deps.mk (fns.o):
  +     * makefile.w32-in ($(BLD)/fns.$(O)): Include sha256.h and
  +     sha512.h.
   
  -2007-10-08  Peter O'Gorman  <bug-gnu-emacs@mlists.thewrittenword.com>  (tiny change)
  +     * fns.c (secure_hash): Rename from crypto_hash_function and change
  +     the first arg to accept symbols.
  +     (Fsecure_hash): New primitive.
  +     (syms_of_fns): New symbols.
   
  -     * termhooks.h (enum event_kind): Remove trailing comma.
  +2011-06-20  Deniz Dogan  <deniz@dogan.se>
   
  -     * frame.h (enum): Remove trailing comma.
  +     * process.c (Fset_process_buffer): Clarify return value in
  +     docstring.
   
  -2007-10-08  Dhruva Krishnamurthy  <dhruvakm@gmail.com>  (tiny change)
  +2011-06-18  Chong Yidong  <cyd@stupidchicken.com>
   
  -     * w32proc.c (delete_child): Don't terminate threads of zombies.
  +     * dispnew.c (add_window_display_history): Use BVAR.
   
  -2007-10-08  Martin Rudalics  <rudalics@gmx.at>
  +     * xdisp.c (debug_method_add): Use BVAR.
  +     (check_window_end, dump_glyph_matrix, dump_glyph)
  +     (dump_glyph_row, dump_glyph_string): Convert arglist to ANSI C.
   
  -     * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
  +     * xfaces.c (check_lface_attrs, check_lface, dump_realized_face):
  +     Likewise.
   
  -     * keyboard.c (syms_of_keyboard): Set up new Lisp variable
  -     last-repeatable-command.
  -     (init_kboard): Initialize Vlast_repeatable_command.
  -     (command_loop_1): Set it to real_this_command unless that was
  -     bound to an input event.
  -     (mark_kboards): Mark it.
  +     * xfns.c (Fx_create_frame, x_create_tip_frame): Delay image cache
  +     check till after the cache is created in init_frame_faces.
   
  -2007-10-08  Richard Stallman  <rms@gnu.org>
  +2011-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
   
  -     * eval.c (condition-case): Doc fix.
  +     * fns.c (Fsafe_length): Yet another int/Lisp_Object mixup.
   
  -2007-10-08  Masatake YAMATO  <jet@gyve.org>
  +2011-06-16  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * xfaces.c (tty_supports_face_attributes_p): Fix code
  -     for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
  -     was copied and not edited.
  +     * lisp.h: Include <limits.h>, for INT_MAX, LONG_MAX, LLONG_MAX.
  +     Without this, prin1 mishandles Lisp_Misc_Save_Value printing on
  +     hosts with pre-C99 libraries, because pD is wrongly defined to "t".
   
  -2007-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     Improve buffer-overflow checking (Bug#8873).
  +     * fileio.c (Finsert_file_contents):
  +     * insdel.c (insert_from_buffer_1, replace_range, replace_range_2):
  +     Remove the old (too-loose) buffer overflow checks.
  +     They weren't needed, since make_gap checks for buffer overflow.
  +     * insdel.c (make_gap_larger): Catch buffer overflows that were missed.
  +     The old code merely checked for Emacs fixnum overflow, and relied
  +     on undefined (wraparound) behavior.  The new code avoids undefined
  +     behavior, and also checks for ptrdiff_t and/or size_t overflow.
  +
  +     * editfns.c (Finsert_char): Don't dump core with very negative counts.
  +     Tune.  Don't use wider integers than needed.  Don't use alloca.
  +     Use a bigger 'string' buffer.  Rewrite to avoid 'n > 0' test.
  +
  +     * insdel.c (replace_range): Fix buf overflow when insbytes < outgoing.
  +
  +     * insdel.c, lisp.h (buffer_overflow): New function.
  +     (insert_from_buffer_1, replace_range, replace_range_2):
  +     * insdel.c (make_gap_larger):
  +     * editfns.c (Finsert_char):
  +     * fileio.c (Finsert_file_contents): Use it, to normalize wording.
  +
  +     * buffer.h (BUF_BYTES_MAX): Cast to ptrdiff_t so that it's signed.
  +
  +2011-06-15  Paul Eggert  <eggert@cs.ucla.edu>
  +
  +     Integer overflow and signedness fixes (Bug#8873).
  +
  +     * ccl.c (ASCENDING_ORDER): New macro, to work around GCC bug 43772.
  +     (GET_CCL_RANGE, IN_INT_RANGE): Use it.
  +
  +     * fileio.c: Don't assume EMACS_INT fits in off_t.
  +     (emacs_lseek): New static function.
  +     (Finsert_file_contents, Fwrite_region): Use it.
  +     Use SEEK_SET, SEEK_CUR, SEEK_END as appropriate.
  +
  +     * fns.c (Fload_average): Don't assume 100 * load average fits in int.
  +
  +     * fns.c: Don't overflow int when computing a list length.
  +     * fns.c (QUIT_COUNT_HEURISTIC): New constant.
  +     (Flength, Fsafe_length): Use EMACS_INT, not int, to avoid unwanted
  +     truncation on 64-bit hosts.  Check for QUIT every
  +     QUIT_COUNT_HEURISTIC entries rather than every other entry; that's
  +     faster and is responsive enough.
  +     (Flength): Report an error instead of overflowing an integer.
  +     (Fsafe_length): Return a float if the value is not representable
  +     as a fixnum.  This shouldn't happen except in contrived situations.
  +     (Fnthcdr, Fsort): Don't assume list length fits in int.
  +     (Fcopy_sequence): Don't assume vector length fits in int.
  +
  +     * alloc.c: Check that resized vectors' lengths fit in fixnums.
  +     (header_size, word_size): New constants.
  +     (allocate_vectorlike): Don't check size overflow here.
  +     (allocate_vector): Check it here instead, since this is the only
  +     caller of allocate_vectorlike that could cause overflow.
  +     Check that the new vector's length is representable as a fixnum.
  +
  +     * fns.c (next_almost_prime): Don't return a multiple of 3 or 5.
  +     The previous code was bogus.  For example, next_almost_prime (32)
  +     returned 39, which is undesirable as it is a multiple of 3; and
  +     next_almost_prime (24) returned 25, which is a multiple of 5 so
  +     why was the code bothering to check for multiples of 7?
  +
  +     * bytecode.c (exec_byte_code): Use ptrdiff_t, not int, for vector length.
  +
  +     * eval.c, doprnt.c (SIZE_MAX): Remove; inttypes.h defines this now.
  +
  +     Variadic C functions now count arguments with ptrdiff_t.
  +     This partly undoes my 2011-03-30 change, which replaced int with size_t.
  +     Back then I didn't know that the Emacs coding style prefers signed int.
  +     Also, in the meantime I found a few more instances where arguments
  +     were being counted with int, which may truncate counts on 64-bit
  +     machines, or EMACS_INT, which may be unnecessarily wide.
  +     * lisp.h (struct Lisp_Subr.function.aMANY)
  +     (DEFUN_ARGS_MANY, internal_condition_case_n, safe_call):
  +     Arg counts are now ptrdiff_t, not size_t.
  +     All variadic functions and their callers changed accordingly.
  +     (struct gcpro.nvars): Now size_t, not size_t.  All uses changed.
  +     * bytecode.c (exec_byte_code): Check maxdepth for overflow,
  +     to avoid potential buffer overrun.  Don't assume arg counts fit in 'int'.
  +     * callint.c (Fcall_interactively): Check arg count for overflow,
  +     to avoid potential buffer overrun.  Use signed char, not 'int',
  +     for 'varies' array, so that we needn't bother to check its size
  +     calculation for overflow.
  +     * editfns.c (Fformat): Use ptrdiff_t, not EMACS_INT, to count args.
  +     * eval.c (apply_lambda):
  +     * fns.c (Fmapconcat): Use XFASTINT, not XINT, to get args length.
  +     (struct textprop_rec.argnum): Now ptrdiff_t, not int.  All uses changed.
  +     (mapconcat): Use ptrdiff_t, not int and EMACS_INT, to count args.
  +
  +     * callint.c (Fcall_interactively): Don't use index var as event count.
  +
  +     * vm-limit.c (check_memory_limits): Fix incorrect extern function decls.
  +     * mem-limits.h (SIZE): Remove; no longer used.
  +
  +     * xterm.c (x_alloc_nearest_color_1): Prefer int to long when int works.
  +
  +     Remove unnecessary casts.
  +     * xterm.c (x_term_init):
  +     * xfns.c (x_set_border_pixel):
  +     * widget.c (create_frame_gcs): Remove casts to unsigned long etc.
  +     These aren't needed now that we assume ANSI C.
   
  -     Add new `input-decode-map' keymap and use it for terminal
  -     escape sequences.
  -     * keyboard.h (struct kboard): Add Vinput_decode_map.
  -     Remove Vlocal_key_translation_map.
  -     * keyboard.c (read_key_sequence): Add support for input-decode-map.
  -     (init_kboard): Init input-decode-map.
  -     Replace local-key-translation-map back with key-translation-map.
  -     (syms_of_keyboard): Declare input-decode-map.
  -     Remove local-key-translation-map.  Update docstrings.
  -     (mark_kboards): Mark Vinput_decode_map.
  -     Don't mark Vlocal_key_translation_map.
  -     * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
  -     Replace local-key-translation-map back with key-translation-map.
  -     * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
  -     Bind in input-decode-map rather than function-key-map.
  +     * sound.c (Fplay_sound_internal): Remove cast to unsigned long.
  +     It's more likely to cause problems (due to unsigned overflow)
  +     than to cure them.
   
  -     * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
  -     This was made redundant by the previous introduction of XSETPVECTYPE.
  +     * dired.c (Ffile_attributes): Don't use 32-bit hack on 64-bit hosts.
   
  -2007-10-09  Richard Stallman  <rms@gnu.org>
  +     * unexelf.c (unexec): Don't assume BSS addr fits in unsigned.
   
  -     * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
  +     * xterm.c (handle_one_xevent): Omit unnecessary casts to unsigned.
   
  -2007-09-29  Richard Stallman  <rms@gnu.org>
  +     * keyboard.c (modify_event_symbol): Don't limit alist len to UINT_MAX.
   
  -     * eval.c (internal_condition_case_2, internal_condition_case_1)
  -     (internal_condition_case): Reenable abort if x_catching_errors ()
  -     to see if that really happens and why.
  +     * lisp.h (CHAR_TABLE_SET): Omit now-redundant test.
   
  -2007-10-06  Andreas Schwab  <schwab@suse.de>
  +     * lread.c (Fload): Don't compare a possibly-garbage time_t value.
   
  -     * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
  +     GLYPH_CODE_FACE returns EMACS_INT, not int.
  +     * dispextern.h (merge_faces):
  +     * xfaces.c (merge_faces):
  +     * xdisp.c (get_next_display_element, next_element_from_display_vector):
  +     Don't assume EMACS_INT fits in int.
  +
  +     * character.h (CHAR_VALID_P): Remove unused parameter.
  +     * fontset.c, lisp.h, xdisp.c: All uses changed.
  +
  +     * editfns.c (Ftranslate_region_internal): Omit redundant test.
  +
  +     * fns.c (concat): Minor tuning based on overflow analysis.
  +     This doesn't fix any bugs.  Use int to hold character, instead
  +     of constantly refetching from Emacs object.  Use XFASTINT, not
  +     XINT, for value known to be a character.  Don't bother comparing
  +     a single byte to 0400, as it's always less.
  +
  +     * floatfns.c (Fexpt):
  +     * fileio.c (make_temp_name): Omit unnecessary cast to unsigned.
  +
  +     * editfns.c (Ftranslate_region_internal): Use int, not EMACS_INT
  +     for characters.
  +
  +     * doc.c (get_doc_string): Omit (unsigned)c that mishandled negatives.
  +
  +     * data.c (Faset): If ARRAY is a string, check that NEWELT is a char.
  +     Without this fix, on a 64-bit host (aset S 0 4294967386) would
  +     incorrectly succeed when S was a string, because 4294967386 was
  +     truncated before it was used.
  +
  +     * chartab.c (Fchar_table_range): Use CHARACTERP to check range.
  +     Otherwise, an out-of-range integer could cause undefined behavior
  +     on a 64-bit host.
  +
  +     * composite.c: Use int, not EMACS_INT, for characters.
  +     (fill_gstring_body, composition_compute_stop_pos): Use int, not
  +     EMACS_INT, for values that are known to be in character range.
  +     This doesn't fix any bugs but is the usual style inside Emacs and
  +     may generate better code on 32-bit machines.
  +
  +     Make sure a 64-bit char is never passed to ENCODE_CHAR.
  +     This is for reasons similar to the recent CHAR_STRING fix.
  +     * charset.c (Fencode_char): Check that character arg is actually
  +     a character.  Pass an int to ENCODE_CHAR.
  +     * charset.h (ENCODE_CHAR): Verify that the character argument is no
  +     wider than 'int', as a compile-time check to prevent future regressions
  +     in this area.
  +
  +     * character.c (char_string): Remove unnecessary casts.
  +
  +     Make sure a 64-bit char is never passed to CHAR_STRING.
  +     Otherwise, CHAR_STRING would do the wrong thing on a 64-bit platform,
  +     by silently ignoring the top 32 bits, allowing some values
  +     that were far too large to be valid characters.
  +     * character.h: Include <verify.h>.
  +     (CHAR_STRING, CHAR_STRING_ADVANCE): Verify that the character
  +     arguments are no wider than unsigned, as a compile-time check
  +     to prevent future regressions in this area.
  +     * data.c (Faset):
  +     * editfns.c (Fchar_to_string, general_insert_function, Finsert_char)
  +     (Fsubst_char_in_region):
  +     * fns.c (concat):
  +     * xdisp.c (decode_mode_spec_coding):
  +     Adjust to CHAR_STRING's new requirement.
  +     * editfns.c (Finsert_char, Fsubst_char_in_region):
  +     * fns.c (concat): Check that character args are actually
  +     characters.  Without this test, these functions did the wrong
  +     thing with wildly out-of-range values on 64-bit hosts.
  +
  +     Remove incorrect casts to 'unsigned' that lose info on 64-bit hosts.
  +     These casts should not be needed on 32-bit hosts, either.
  +     * keyboard.c (read_char):
  +     * lread.c (Fload): Remove casts to unsigned.
  +
  +     * lisp.h (UNSIGNED_CMP): New macro.
  +     This fixes comparison bugs on 64-bit hosts.
  +     (ASCII_CHAR_P): Use it.
  +     * casefiddle.c (casify_object):
  +     * character.h (ASCII_BYTE_P, CHAR_VALID_P)
  +     (SINGLE_BYTE_CHAR_P, CHAR_STRING):
  +     * composite.h (COMPOSITION_ENCODE_RULE_VALID):
  +     * dispextern.h (FACE_FROM_ID):
  +     * keyboard.c (read_char): Use UNSIGNED_CMP.
  +
  +     * xmenu.c (dialog_selection_callback) [!USE_GTK]: Cast to intptr_t,
  +     not to EMACS_INT, to avoid GCC warning.
  +
  +     * xfns.c (x_set_scroll_bar_default_width): Remove unused 'int' locals.
  +
  +     * buffer.h (PTR_BYTE_POS, BUF_PTR_BYTE_POS): Remove harmful cast.
  +     The cast incorrectly truncated 64-bit byte offsets to 32 bits, and
  +     isn't needed on 32-bit machines.
  +
  +     * buffer.c (Fgenerate_new_buffer_name):
  +     Use EMACS_INT for count, not int.
  +     (advance_to_char_boundary): Return EMACS_INT, not int.
  +
  +     * data.c (Qcompiled_function): Now static.
  +
  +     * window.c (window_body_lines): Now static.
  +
  +     * image.c (gif_load): Rename local to avoid shadowing.
  +
  +     * lisp.h (SAFE_ALLOCA_LISP): Check for integer overflow.
  +     (struct Lisp_Save_Value): Use ptrdiff_t, not int, for 'integer' member.
  +     * alloc.c (make_save_value): Integer argument is now of type
  +     ptrdiff_t, not int.
  +     (mark_object): Use ptrdiff_t, not int.
  +     * lisp.h (pD): New macro.
  +     * print.c (print_object): Use it.
  +
  +     * alloc.c: Use EMACS_INT, not int, to count objects.
  +     (total_conses, total_markers, total_symbols, total_vector_size)
  +     (total_free_conses, total_free_markers, total_free_symbols)
  +     (total_free_floats, total_floats, total_free_intervals)
  +     (total_intervals, total_strings, total_free_strings):
  +     Now EMACS_INT, not int.  All uses changed.
  +     (Fgarbage_collect): Compute overall total using a double, so that
  +     integer overflow is less likely to be a problem.  Check for overflow
  +     when converting back to an integer.
  +     (n_interval_blocks, n_string_blocks, n_float_blocks, n_cons_blocks)
  +     (n_vectors, n_symbol_blocks, n_marker_blocks): Remove.
  +     These were 'int' variables that could overflow on 64-bit hosts;
  +     they were never used, so remove them instead of repairing them.
  +     (nzombies, ngcs, max_live, max_zombies): Now EMACS_INT, not 'int'.
  +     (inhibit_garbage_collection): Set gc_cons_threshold to max value.
  +     Previously, this ceilinged at INT_MAX, but that doesn't work on
  +     64-bit machines.
  +     (allocate_pseudovector): Don't use EMACS_INT when int would do.
  +
  +     * alloc.c (Fmake_bool_vector): Don't assume vector size fits in int.
  +     (allocate_vectorlike): Check for ptrdiff_t overflow.
  +     (mark_vectorlike, mark_char_table, mark_object): Avoid EMACS_UINT
  +     when a (possibly-narrower) signed value would do just as well.
  +     We prefer using signed arithmetic, to avoid comparison confusion.
  +
  +     * alloc.c: Catch some string size overflows that we were missing.
  +     (XMALLOC_OVERRUN_CHECK_SIZE) [!XMALLOC_OVERRUN_CHECK]: Define to 0,
  +     for convenience in STRING_BYTES_MAX.
  +     (STRING_BYTES_MAX): New macro, superseding the old one in lisp.h.
  +     The definition here is exact; the one in lisp.h was approximate.
  +     (allocate_string_data): Check for string overflow.  This catches
  +     some instances we weren't catching before.  Also, it catches
  +     size_t overflow on (unusual) hosts where SIZE_MAX <= min
  +     (PTRDIFF_MAX, MOST_POSITIVE_FIXNUM), e.g., when size_t is 32 bits
  +     and ptrdiff_t and EMACS_INT are both 64 bits.
  +
  +     * character.c, coding.c, doprnt.c, editfns.c, eval.c:
  +     All uses of STRING_BYTES_MAX replaced by STRING_BYTES_BOUND.
  +     * lisp.h (STRING_BYTES_BOUND): Rename from STRING_BYTES_MAX.
  +
  +     * character.c (string_escape_byte8): Fix nbytes/nchars typo.
  +
  +     * alloc.c (Fmake_string): Check for out-of-range init.
  +
  +2011-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
  +
  +     * eval.c (Fdefvaralias): Also mark the target as variable-special-p.
  +
  +2011-06-14  Jan Djärv  <jan.h.d@swipnet.se>
  +
  +     * xfns.c (x_set_scroll_bar_default_width): Remove argument to
  +     xg_get_default_scrollbar_width.
  +
  +     * gtkutil.c: Include emacsgtkfixed.h if HAVE_GTK3.
  +     (int_gtk_range_get_value): Move to the scroll bar part of the file.
  +     (style_changed_cb): Call update_theme_scrollbar_width and call
  +     x_set_scroll_bar_default_width and xg_frame_set_char_size for
  +     all frames (Bug#8505).
  +     (xg_create_frame_widgets): Call emacs_fixed_new if HAVE_GTK3 (Bug#8505).
  +     Call gtk_window_set_resizable if HAVE_GTK3.
  +     (x_wm_set_size_hint): Call emacs_fixed_set_min_size with min width
  +     and height if HAVE_GTK3 (Bug#8505).
  +     (scroll_bar_width_for_theme): New variable.
  +     (update_theme_scrollbar_width): New function.
  +     (xg_get_default_scrollbar_width): Move code to
  +     update_theme_scrollbar_width, just return scroll_bar_width_for_theme.
  +     (xg_initialize): Call update_theme_scrollbar_width.
  +
  +     * gtkutil.h (xg_get_default_scrollbar_width): Remove argument.
  +
  +     * emacsgtkfixed.c, emacsgtkfixed.h: New files.
  +
  +2011-06-12  Martin Rudalics  <rudalics@gmx.at>
  +
  +     * frame.c (make_frame): Call other_buffer_safely instead of
  +     other_buffer.
  +
  +     * window.c (temp_output_buffer_show): Call display_buffer with
  +     second argument Vtemp_buffer_show_specifiers and reset latter
  +     immediately after the call.
  +     (Vtemp_buffer_show_specifiers): New variable.
  +     (auto_window_vscroll_p, next_screen_context_lines)
  +     (Vscroll_preserve_screen_position): Remove leading asterisks from
  +     doc-strings.
  +
  +2011-06-12  Paul Eggert  <eggert@cs.ucla.edu>
  +
  +     Fix minor problems found by GCC 4.6.0 static checking.
  +     * buffer.c (Qclone_number): Remove for now, as it's unused.
  +     (record_buffer, Funrecord_buffer): Rename local to avoid shadowing.
  +     (record_buffer): Remove unused local.
  +     * frame.c (other_visible_frames, frame_buffer_list): Now static.
  +     (set_frame_buffer_list): Remove; unused.
  +     * frame.h (other_visible_frames): Remove decl.
  +     * keyboard.h (menu_items_inuse): Declare only if USE_GTK || USE_MOTIF.
  +     * lisp.h (frame_buffer_list, set_frame_buffer_list): Remove decls.
  +     (add_gpm_wait_descriptor, delete_gpm_wait_descriptor): Declare only
  +     if HAVE_GPM.
  +     * menu.c (menu_items_inuse): Now static unless USE_GTK || USE_MOTIF.
  +     * process.c (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
  +     Define only if HAVE_GPM.
  +     * widget.c (EmacsFrameResize, emacsFrameClassRec): Now static.
  +     (update_hints_inhibit): Remove; never set.  All uses removed.
  +     * widgetprv.h (emacsFrameClassRec): Remove decl.
  +     * window.c (delete_deletable_window): Now returns void, since it
  +     wasn't returning anything.
  +     (compare_window_configurations): Remove unused locals.
  +     * xfns.c (x_set_scroll_bar_default_width): Remove unused locals.
  +     * xmenu.c (x_menu_set_in_use): Define only if USE_GTK || USE_MOTIF.
  +     (dialog_selection_callback) [!USE_GTK]: Prefer intptr_t for integers
  +     the same widths as pointers.  This follows up on the 2011-05-06 patch.
  +     * xterm.c (x_alloc_lighter_color_for_widget): Define only if USE_LUCID.
  +     * xterm.h: Likewise.
  +     (x_menu_set_in_use): Declare only if USE_GTK || USE_MOTIF.
  +
  +2011-06-12  Juanma Barranquero  <lekktu@gmail.com>
   
  -2007-10-04  Juanma Barranquero  <lekktu@gmail.com>
  +     * makefile.w32-in: Update dependencies.
  +     (LISP_H): Add lib/intprops.h.
  +
  +2011-06-11  Chong Yidong  <cyd@stupidchicken.com>
  +
  +     * image.c (gif_load): Add animation frame delay to the metadata.
  +     (syms_of_image): Use DEFSYM.  New symbol `delay'.
  +
  +2011-06-11  Martin Rudalics  <rudalics@gmx.at>
  +
  +     * window.c (delete_deletable_window): Re-add.
  +     (Fset_window_configuration): Rewrite to handle dead buffers and
  +     consequently deletable windows.
  +     (window_tree, Fwindow_tree): Remove.  Supply functionality in
  +     window.el.
  +     (compare_window_configurations): Simplify code.
  +
  +2011-06-11  Andreas Schwab  <schwab@linux-m68k.org>
  +
  +     * image.c (imagemagick_load_image): Fix type mismatch.
  +     (Fimagemagick_types): Likewise.
  +
  +     * window.h (replace_buffer_in_windows): Declare.
  +
  +2011-06-11  Martin Rudalics  <rudalics@gmx.at>
  +
  +     * buffer.c: New Lisp objects Qbuffer_list_update_hook and
  +     Qclone_number.  Remove external declaration of Qdelete_window.
  +     (Fbuffer_list): Rewrite doc-string.  Minor restructuring of
  +     code.
  +     (Fget_buffer_create, Fmake_indirect_buffer, Frename_buffer):
  +     Run Qbuffer_list_update_hook if allowed.
  +     (Fother_buffer): Rewrite doc-string.  Major rewrite for new
  +     buffer list implementation.
  +     (other_buffer_safely): New function.
  +     (Fkill_buffer): Replace call to replace_buffer_in_all_windows by
  +     calls to replace_buffer_in_windows and
  +     replace_buffer_in_windows_safely.  Run Qbuffer_list_update_hook
  +     if allowed.
  +     (record_buffer): Inhibit quitting and rewrite using quittable
  +     functions.  Run Qbuffer_list_update_hook if allowed.
  +     (Frecord_buffer, Funrecord_buffer): New functions.
  +     (switch_to_buffer_1, Fswitch_to_buffer): Remove.
  +     Move switch-to-buffer to window.el.
  +     (bury-buffer): Move to window.el.
  +     (Vbuffer_list_update_hook): New variable.
  +
  +     * lisp.h (other_buffer_safely): Add prototype in buffer.c
  +     section.
  +
  +     * window.h (resize_frame_windows): Move up in code.
  +     (Fwindow_frame): Remove EXFUN.
  +     (replace_buffer_in_all_windows): Remove prototype.
  +     (replace_buffer_in_windows_safely): Add prototype.
  +
  +     * window.c: Declare Qdelete_window static again.  Move down
  +     declaration of select_count.
  +     (Fnext_window, Fprevious_window): Rewrite doc-strings.
  +     (Fother_window): Move to window.el.
  +     (window_loop): Remove DELETE_BUFFER_WINDOWS and UNSHOW_BUFFER
  +     cases.  Add REPLACE_BUFFER_IN_WINDOWS_SAFELY case.
  +     (Fdelete_windows_on, Freplace_buffer_in_windows): Move to
  +     window.el.
  +     (replace_buffer_in_windows): Implement by calling
  +     Qreplace_buffer_in_windows.
  +     (replace_buffer_in_all_windows): Remove with some functionality
  +     moved into replace_buffer_in_windows_safely.
  +     (replace_buffer_in_windows_safely): New function.
  +     (select_window_norecord, select_frame_norecord): Move in front
  +     of run_window_configuration_change_hook.  Remove now obsolete
  +     declarations.
  +     (Fset_window_buffer): Rewrite doc-string.
  +     Call Qrecord_window_buffer.
  +     (keys_of_window): Move binding for other-window to window.el.
  +
  +2011-06-11  Chong Yidong  <cyd@stupidchicken.com>
  +
  +     * dispextern.h (struct image): Replace data member, whose int_val
  +     and ptr_val fields were not used by anything, with a single
  +     lisp_val object.
  +
  +     * image.c (Fimage_metadata, make_image, mark_image, tiff_load)
  +     (gif_clear_image, gif_load, imagemagick_load_image)
  +     (gs_clear_image, gs_load): Callers changed.
  +
  +2011-06-10  Paul Eggert  <eggert@cs.ucla.edu>
  +
  +     * buffer.h: Include <time.h>, for time_t.
  +     Needed to build on FreeBSD 8.2.  Problem reported by Herbert J. Skuhra.
  +
  +     Fix minor problems found by static checking.
  +
  +     * image.c (PixelGetMagickColor): Declare if ImageMagick headers don't.
  +
  +     Make identifiers static if they are not used in other modules.
  +     * data.c (Qcompiled_function, Qframe, Qvector):
  +     * image.c (QimageMagick, Qsvg):
  +     * minibuf.c (Qmetadata):
  +     * window.c (resize_window_check, resize_root_window): Now static.
  +     * window.h (resize_window_check, resize_root_window): Remove decls.
  +
  +     * window.c (window_deletion_count, delete_deletable_window):
  +     Remove; unused.
  +     (window_body_lines): Now static.
  +     (Fdelete_other_windows_internal): Mark vars as initialized.
  +     Make sure 'resize_failed' is initialized.
  +     (run_window_configuration_change_hook): Rename local to avoid shadowing.
  +     (resize_window_apply): Remove unused local.
  +     * window.h (delete_deletable_window): Remove decl.
  +
  +     * image.c (gif_load, svg_load_image): Rename locals to avoid shadowing.
  +     (imagemagick_load_image): Fix pointer signedness problem by changing
  +     last arg from unsigned char * to char *.  All uses changed.
  +     Also, fix a local for similar reasons.
  +     Remove unused locals.  Remove locals to avoid shadowing.
  +     (fn_rsvg_handle_free): Remove; unused.
  +     (svg_load, svg_load_image): Fix pointer signedness problem.
  +     (imagemagick_load_image): Don't use garbage pointer image_wand.
  +
  +     * ftfont.c (ftfont_get_metrics, ftfont_drive_otf): Remove unused locals.
  +
  +2011-06-10  Chong Yidong  <cyd@stupidchicken.com>
  +
  +     * image.c (gif_load): Fix omitted cast error introduced by
  +     2011-06-06 change.
  +
  +2011-06-10  Martin Rudalics  <rudalics@gmx.at>
  +
  +     * window.h (resize_proportionally, orig_total_lines)
  +     (orig_top_line): Remove from window structure.
  +     (set_window_height, set_window_width, change_window_heights)
  +     (Fdelete_window): Remove prototypes.
  +     (resize_frame_windows): Remove duplicate declaration.
  +
  +2011-06-10  Eli Zaretskii  <eliz@gnu.org>
  +
  +     * window.h (resize_frame_windows, resize_window_check)
  +     (delete_deletable_window, resize_root_window)
  +     (resize_frame_windows): Declare prototypes.
  +
  +     * window.c (resize_window_apply): Make definition be "static" to
  +     match the prototype.
  +
  +2011-06-10  Martin Rudalics  <rudalics@gmx.at>
  +
  +     * window.c: Remove declarations of Qwindow_size_fixed,
  +     window_min_size_1, window_min_size_2, window_min_size,
  +     size_window, window_fixed_size_p, enlarge_window, delete_window.
  +     Remove static from declaration of Qdelete_window, it's
  +     temporarily needed by Fbury_buffer.
  +     (replace_window): Don't assign orig_top_line and
  +     orig_total_lines.
  +     (Fdelete_window, delete_window): Remove.  Window deletion is
  +     handled by window.el.
  +     (window_loop): Remove DELETE_OTHER_WINDOWS case.
  +     Replace Fdelete_window calls with calls to Qdelete_window.
  +     (Fdelete_other_windows): Remove.  Deleting other windows is
  +     handled by window.el.
  +     (window_fixed_size_p): Remove.  Fixed-sizeness of windows is
  +     handled in window.el.
  +     (window_min_size_2, window_min_size_1, window_min_size): Remove.
  +     Window minimum sizes are handled in window.el.
  +     (shrink_windows, size_window, set_window_height)
  +     (set_window_width, change_window_heights, window_height)
  +     (window_width, CURBEG, CURSIZE, enlarge_window)
  +     (adjust_window_trailing_edge, Fadjust_window_trailing_edge)
  +     (Fenlarge_window, Fshrink_window): Remove.  Window resizing is
  +     handled in window.el.
  +     (make_dummy_parent): Rename to make_parent_window and give it a
  +     second argument horflag.
  +     (make_window): Don't set resize_proportionally any more.
  +     (Fsplit_window): Remove.  Windows are split in window.el.
  +     (save_restore_action, save_restore_orig_size)
  +     (shrink_window_lowest_first, save_restore_orig_size): Remove.
  +     Resize mini windows in window.el.
  +     (grow_mini_window, shrink_mini_window): Implement by calling
  +     Qresize_root_window_vertically, resize_window_check and
  +     resize_window_apply.
  +     (saved_window, Fset_window_configuration, save_window_save):
  +     Do not handle orig_top_line, orig_total_lines, and
  +     resize_proportionally.
  +     (window_min_height, window_min_width): Move to window.el.
  +     (keys_of_window): Move bindings for delete-other-windows,
  +     split-window, delete-window and enlarge-window to window.el.
  +
  +     * buffer.c: Temporarily extern Qdelete_window.
  +     (Fbury_buffer): Temporarily call Qdelete_window instead of
  +     Fdelete_window (Fbury_buffer will move to window.el soon).
  +
  +     * frame.c (set_menu_bar_lines_1): Remove code handling
  +     orig_top_line and orig_total_lines.
  +
  +     * dispnew.c (adjust_frame_glyphs_initially): Don't use
  +     set_window_height but set heights directly.
  +     (change_frame_size_1): Use resize_frame_windows.
  +
  +     * xdisp.c (init_xdisp): Don't use set_window_height but set
  +     heights directly.
  +
  +     * xfns.c (x_set_menu_bar_lines, x_set_tool_bar_lines):
  +     Use resize_frame_windows instead of change_window_heights and run
  +     run_window_configuration_change_hook.
  +
  +     * w32fns.c (x_set_tool_bar_lines): Use resize_frame_windows
  +     instead of change_window_heights and run
  +     run_window_configuration_change_hook.
  +
  +2011-06-09  Martin Rudalics  <rudalics@gmx.at>
  +
  +     * window.c (replace_window): Rename second argument REPLACEMENT to
  +     NEW.  New third argument SETFLAG.  Rewrite.
  +     (delete_window, make_dummy_parent): Call replace_window with
  +     third argument 1.
  +     (window_list_1): Move down in code.
  +     (run_window_configuration_change_hook): Move set_buffer part
  +     before select_frame_norecord part in order to unwind correctly.
  +     Rename count1 to count.
  +     (recombine_windows, delete_deletable_window, resize_root_window)
  +     (Fdelete_other_windows_internal)
  +     (Frun_window_configuration_change_hook, make_parent_window)
  +     (resize_window_check, resize_window_apply, Fresize_window_apply)
  +     (resize_frame_windows, Fsplit_window_internal)
  +     (Fdelete_window_internal, Fresize_mini_window_internal):
  +     New functions.
  +     (syms_of_window): New variables Vwindow_splits and Vwindow_nest.
   
  -     * image.c (syms_of_image) <image-types>: Fix typo in docstring.
  +2011-06-08  Martin Rudalics  <rudalics@gmx.at>
   
  -2007-10-03  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * window.h (window): Add some new members to window structure -
  +     normal_lines, normal_cols, new_total, new_normal, clone_number,
  +     splits, nest, prev_buffers, next_buffers.
  +     (WINDOW_TOTAL_SIZE): Move here from window.c.
  +     (MIN_SAFE_WINDOW_WIDTH, MIN_SAFE_WINDOW_HEIGHT): Define here.
   
  -     * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
  +     * window.c (Fwindow_height, Fwindow_width, Fwindow_full_width_p):
  +     Remove.
  +     (make_dummy_parent): Set new members of windows structure.
  +     (make_window): Move down in code.  Handle new members of window
  +     structure.
  +     (Fwindow_clone_number, Fwindow_splits, Fset_window_splits)
  +     (Fwindow_nest, Fset_window_nest, Fwindow_new_total)
  +     (Fwindow_normal_size, Fwindow_new_normal, Fwindow_prev_buffers)
  +     (Fset_window_prev_buffers, Fwindow_next_buffers)
  +     (Fset_window_next_buffers, Fset_window_clone_number):
  +     New functions.
  +     (Fwindow_hscroll, Fwindow_at, Fwindow_point, Fwindow_start)
  +     (Fwindow_end, Fwindow_line_height, Fset_window_dedicated_p):
  +     Doc-string fixes.
  +     (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter):
  +     Argument WINDOW can be now internal window too.
  +     (Fwindow_use_time): Move up in code.
  +     (Fget_buffer_window): Rename argument FRAME to ALL-FRAMES.
  +     Rewrite doc-string.
  +     (Fset_window_configuration, saved_window)
  +     (Fcurrent_window_configuration, save_window_save): Handle new
  +     members of window structure.
  +     (WINDOW_TOTAL_SIZE, MIN_SAFE_WINDOW_WIDTH)
  +     (MIN_SAFE_WINDOW_HEIGHT): Move to window.h.
  +     (syms_of_window): New Lisp objects Qrecord_window_buffer,
  +     Qwindow_deletable_p, Qdelete_window, Qreplace_buffer_in_windows,
  +     Qget_mru_window, Qresize_root_window,
  +     Qresize_root_window_vertically, Qsafe, Qabove, Qbelow,
  +     Qauto_buffer_name; staticpro them.
  +
  +2011-06-07  Martin Rudalics  <rudalics@gmx.at>
  +
  +     * window.c (Fwindow_total_size, Fwindow_left_column)
  +     (Fwindow_top_line, window_body_lines, Fwindow_body_size)
  +     (Fwindow_list_1): New functions.
  +     (window_box_text_cols): Replace with window_body_cols.
  +     (Fwindow_width, Fscroll_left, Fscroll_right):
  +     Use window_body_cols instead of window_box_text_cols.
  +     (delete_window, Fset_window_configuration):
  +     Call delete_all_subwindows with window as argument.
  +     (delete_all_subwindows): Take a window as argument and not a
  +     structure.  Rewrite.
  +     (window_loop): Remove handling of GET_LRU_WINDOW and
  +     GET_LARGEST_WINDOW.
  +     (Fget_lru_window, Fget_largest_window): Move to window.el.
  +
  +     * window.h: Extern window_body_cols instead of
  +     window_box_text_cols.  delete_all_subwindows now takes a
  +     Lisp_Object as argument.
  +
  +     * indent.c (compute_motion, Fcompute_motion):
  +     Use window_body_cols instead of window_box_text_cols.
  +
  +     * frame.c (delete_frame): Call delete_all_subwindows with root
  +     window as argument.
  +
  +2011-06-07  Daniel Colascione  <dan.colascione@gmail.com>
  +
  +     * fns.c (Fputhash): Document return value.
  +
  +2011-06-06  Chong Yidong  <cyd@stupidchicken.com>
  +
  +     * image.c (gif_load): Implement gif89a spec "no disposal" method.
  +
  +2011-06-06  Paul Eggert  <eggert@cs.ucla.edu>
  +
  +     Cons<->int and similar integer overflow fixes (Bug#8794).
  +
  +     Check for overflow when converting integer to cons and back.
  +     * charset.c (Fdefine_charset_internal, Fdecode_char):
  +     Use cons_to_unsigned to catch overflow.
  +     (Fencode_char): Use INTEGER_TO_CONS.
  +     * composite.h (LGLYPH_CODE): Use cons_to_unsigned.
  +     (LGLYPH_SET_CODE): Use INTEGER_TO_CONS.
  +     * data.c (long_to_cons, cons_to_long): Remove.
  +     (cons_to_unsigned, cons_to_signed): New functions.
  +     These signal an error for invalid or out-of-range values.
  +     * dired.c (Ffile_attributes): Use INTEGER_TO_CONS.
  +     * fileio.c (Fset_visited_file_modtime): Use CONS_TO_INTEGER.
  +     * font.c (Ffont_variation_glyphs):
  +     * fontset.c (Finternal_char_font): Use INTEGER_TO_CONS.
  +     * lisp.h: Include <intprops.h>.
  +     (INTEGER_TO_CONS, CONS_TO_INTEGER): New macros.
  +     (cons_to_signed, cons_to_unsigned): New decls.
  +     (long_to_cons, cons_to_long): Remove decls.
  +     * undo.c (record_first_change): Use INTEGER_TO_CONS.
  +     (Fprimitive_undo): Use CONS_TO_INTEGER.
  +     * xfns.c (Fx_window_property): Likewise.
  +     * xselect.c: Include <limits.h>.
  +     (x_own_selection, selection_data_to_lisp_data):
  +     Use INTEGER_TO_CONS.
  +     (x_handle_selection_request, x_handle_selection_clear)
  +     (x_get_foreign_selection, Fx_disown_selection_internal)
  +     (Fx_get_atom_name, x_send_client_event): Use CONS_TO_INTEGER.
  +     (lisp_data_to_selection_data): Use cons_to_unsigned.
  +     (x_fill_property_data): Use cons_to_signed.
  +     Report values out of range.
  +
  +     Check for buffer and string overflow more precisely.
  +     * buffer.h (BUF_BYTES_MAX): New macro.
  +     * lisp.h (STRING_BYTES_MAX): New macro.
  +     * alloc.c (Fmake_string):
  +     * character.c (string_escape_byte8):
  +     * coding.c (coding_alloc_by_realloc):
  +     * doprnt.c (doprnt):
  +     * editfns.c (Fformat):
  +     * eval.c (verror):
  +     Use STRING_BYTES_MAX, not MOST_POSITIVE_FIXNUM,
  +     since they may not be the same number.
  +     * editfns.c (Finsert_char):
  +     * fileio.c (Finsert_file_contents):
  +     Likewise for BUF_BYTES_MAX.
   
  -2007-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * image.c: Use ptrdiff_t, not int, for sizes.
  +     (slurp_file): Switch from int to ptrdiff_t.
  +     All uses changed.
  +     (slurp_file): Check that file size fits in both size_t (for
  +     malloc) and ptrdiff_t (for sanity and safety).
  +
  +     * fileio.c (Fverify_visited_file_modtime): Avoid time overflow
  +     if b->modtime has its maximal value.
  +
  +     * dired.c (Ffile_attributes): Don't assume EMACS_INT has >32 bits.
  +
  +     Don't assume time_t can fit into int.
  +     * buffer.h (struct buffer.modtime): Now time_t, not int.
  +     * fileio.c (Fvisited_file_modtime): No need for time_t cast now.
  +     * undo.c (Fprimitive_undo): Use time_t, not int, for time_t value.
  +
  +     Minor fixes for signed vs unsigned integers.
  +     * character.h (MAYBE_UNIFY_CHAR):
  +     * charset.c (maybe_unify_char):
  +     * keyboard.c (read_char, reorder_modifiers):
  +     XINT -> XFASTINT, since the integer must be nonnegative.
  +     * ftfont.c (ftfont_spec_pattern):
  +     * keymap.c (access_keymap, silly_event_symbol_error):
  +     XUINT -> XFASTINT, since the integer must be nonnegative.
  +     (Fsingle_key_description, preferred_sequence_p): XUINT -> XINT,
  +     since it makes no difference and we prefer signed.
  +     * keyboard.c (record_char): Use XUINT when all the neighbors do.
  +     (access_keymap): NATNUMP -> INTEGERP, since the integer must be
  +     nonnegative.
  +
  +2011-06-06  Stefan Monnier  <monnier@iro.umontreal.ca>
  +
  +     * window.h (Fwindow_frame): Declare.
  +
  +2011-06-06  Paul Eggert  <eggert@cs.ucla.edu>
  +
  +     * alloc.c: Simplify handling of large-request failures (Bug#8800).
  +     (SPARE_MEMORY): Always define.
  +     (LARGE_REQUEST): Remove.
  +     (memory_full): Use SPARE_MEMORY rather than LARGE_REQUEST.
  +
  +2011-06-06  Martin Rudalics  <rudalics@gmx.at>
  +
  +     * lisp.h: Move EXFUNS for Fframe_root_window,
  +     Fframe_first_window and Fset_frame_selected_window to window.h.
  +
  +     * window.h: Move EXFUNS for Fframe_root_window,
  +     Fframe_first_window and Fset_frame_selected_window here from
  +     lisp.h.
  +
  +     * frame.c (Fwindow_frame, Fframe_first_window)
  +     (Fframe_root_window, Fframe_selected_window)
  +     (Fset_frame_selected_window): Move to window.c.
  +     (Factive_minibuffer_window): Move to minibuf.c.
  +     (Fother_visible_frames_p): New function.
  +
  +     * minibuf.c (Factive_minibuffer_window): Move here from frame.c.
  +
  +     * window.c (decode_window, decode_any_window): Move up in code.
  +     (Fwindowp, Fwindow_live_p): Rewrite doc-strings.
  +     (inhibit_frame_unsplittable): Remove unused variable.
  +     (Fwindow_buffer): Move up and rewrite doc-string.
  +     (Fwindow_parent, Fwindow_vchild, Fwindow_hchild, Fwindow_next)
  +     (Fwindow_prev): New functions.
  +     (Fwindow_frame): Move here from frame.c.  Accept any window as
  +     argument.
  +     (Fframe_root_window, Fframe_first_window)
  +     (Fframe_selected_window): Move here from frame.c.  Accept frame
  +     or arbitrary window as argument.  Update doc-strings.
  +     (Fminibuffer_window): Move up in code.
  +     (Fwindow_minibuffer_p): Move up in code and simplify.
  +     (Fset_frame_selected_window): Move here from frame.c.
  +     Marginal rewrite.
  +     (Fselected_window, select_window, Fselect_window): Move up in
  +     code.  Minor doc-string fixes.
   
  -     * window.h (struct window):
  -     * window.c (struct save_window_data, struct saved_window):
  -     * termhooks.h (struct terminal):
  -     * process.h (struct Lisp_Process):
  -     * frame.h (struct frame):
  -     * buffer.h (struct buffer):
  -     * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
  -     (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
  -     The size field of (pseudo)vectors is now unsigned.
  -     (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
  +2011-06-06  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
  -     Turn `count' into an integer.
  +     * alloc.c (memory_full) [SYSTEM_MALLOC]: Port to MacOS (Bug#8800).
  +     Do not assume that spare memory exists; that assumption is valid
  +     only if SYSTEM_MALLOC.
  +     (LARGE_REQUEST): New macro, so that the issue of large requests
  +     is separated from the issue of spare memory.
   
  -     * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
  -     (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
  -     * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
  -     * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
  -     (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
  +2011-06-05  Andreas Schwab  <schwab@linux-m68k.org>
   
  -     * alloc.c (allocate_pseudovector): New fun.
  -     (ALLOCATE_PSEUDOVECTOR): New macro.
  -     (allocate_window, allocate_terminal, allocate_frame)
  -     (allocate_process): Use it.
  -     (mark_vectorlike): New function.
  -     (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
  -     (mark_terminals): Use it.
  -     (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
  -     (Fmake_byte_code): Use XSETPVECTYPE.
  +     * editfns.c (Fformat): Correctly handle zero flag with hexadecimal
  +     format.  (Bug#8806)
   
  -     * frame.c (Fframe_parameters): Minor simplification.
  +     * gtkutil.c (xg_get_default_scrollbar_width): Avoid warning.
   
  -     * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
  +     * xfns.c (x_set_scroll_bar_default_width): Move declarations
  +     before statements.
   
  -     * marker.c (Fmarker_buffer): Make test for odd case into a failure.
  +2011-06-05  Jan Djärv  <jan.h.d@swipnet.se>
   
  -     * buffer.c (Fget_buffer_create, init_buffer_once):
  -     * lread.c (defsubr):
  -     * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
  +     * gtkutil.c (xg_get_default_scrollbar_width): New function.
   
  -     * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
  -     defined differently in the m/*.h files.
  -     (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
  -     (XSETPVECTYPE): New macro.
  -     (XSETPSEUDOVECTOR): Use it.
  +     * gtkutil.h: Declare xg_get_default_scrollbar_width.
   
  -     * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
  -     (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
  +     * xfns.c (x_set_scroll_bar_default_width): If USE_GTK, get
  +     min width by calling x_set_scroll_bar_default_width (Bug#8505).
   
  -     * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
  -     * lread.c (defvar_per_buffer):
  -     * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
  +2011-06-05  Juanma Barranquero  <lekktu@gmail.com>
   
  -     * window.c (candidate_window_p): Only consider as visible frames that
  -     are on the same terminal.
  +     * xdisp.c (single_display_spec_intangible_p): Remove declaration.
   
  -     * m/ibms390x.h (MARKBIT): Remove unused macro.
  +2011-06-04  Chong Yidong  <cyd@stupidchicken.com>
   
  -2007-10-01  Juanma Barranquero  <lekktu@gmail.com>
  +     * xselect.c (x_clipboard_manager_save): Remove redundant arg.
  +     (x_clipboard_manager_save): Add return value.
  +     (x_clipboard_manager_error_1, x_clipboard_manager_error_2):
  +     New error handlers.
  +     (x_clipboard_manager_save_frame, x_clipboard_manager_save_all):
  +     Obey Vx_select_enable_clipboard_manager.  Catch errors in
  +     x_clipboard_manager_save (Bug#8779).
  +     (Vx_select_enable_clipboard_manager): New variable.
  +     (x_get_foreign_selection): Reduce scope of x_catch_errors (Bug#8790).
   
  -     * lread.c (Fload): Fix typo in docstring.
  +2011-06-04  Dan Nicolaescu  <dann@ics.uci.edu>
   
  -2007-10-01  Michaël Cadilhac  <michael@cadilhac.name>
  +     * emacs.c (main): Warn when starting a GTK emacs in daemon mode.
   
  -     * floatfns.c (Fexpt): Manually check for overflows, so that a power
  -     of a non-zero value can't yield zero.
  +2011-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
   
  -2007-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * fringe.c (update_window_fringes): Don't update overlay arrow bitmap
  +     in the current matrix if keep_current_p is non-zero.
   
  -     * term.c (term_clear_mouse_face, term_mouse_highlight)
  -     (tty_write_glyphs_with_face): Only define is HAVE_GPM.
  +2011-06-04  Eli Zaretskii  <eliz@gnu.org>
  +
  +     * bidi.c (bidi_level_of_next_char): Fix last change.
  +
  +2011-06-03  Eli Zaretskii  <eliz@gnu.org>
  +
  +     Support bidi reordering of text covered by display properties.
  +
  +     * bidi.c (bidi_copy_it): Use offsetof instead of emulating it.
  +     (bidi_fetch_char, bidi_fetch_char_advance): New functions.
  +     (bidi_cache_search, bidi_cache_iterator_state)
  +     (bidi_paragraph_init, bidi_resolve_explicit, bidi_resolve_weak)
  +     (bidi_level_of_next_char, bidi_move_to_visually_next):
  +     Support character positions inside a run of characters covered by a
  +     display string.
  +     (bidi_paragraph_init, bidi_resolve_explicit_1)
  +     (bidi_level_of_next_char): Call bidi_fetch_char and
  +     bidi_fetch_char_advance instead of FETCH_CHAR and
  +     FETCH_CHAR_ADVANCE.
  +     (bidi_init_it): Initialize new members.
  +     (LRE_CHAR, RLE_CHAR, PDF_CHAR, LRO_CHAR, RLO_CHAR): Remove macro
  +     definitions.
  +     (bidi_explicit_dir_char): Lookup character type in bidi_type_table,
  +     instead of using explicit *_CHAR codes.
  +     (bidi_resolve_explicit, bidi_resolve_weak):
  +     Use FETCH_MULTIBYTE_CHAR instead of FETCH_CHAR, as reordering of
  +     bidirectional text is supported only in multibyte buffers.
  +     (bidi_init_it): Accept additional argument FRAME_WINDOW_P and use
  +     it to initialize the frame_window_p member of struct bidi_it.
  +     (bidi_cache_iterator_state, bidi_resolve_explicit_1)
  +     (bidi_resolve_explicit, bidi_resolve_weak)
  +     (bidi_level_of_next_char, bidi_move_to_visually_next): Abort if
  +     bidi_it->nchars is non-positive.
  +     (bidi_level_of_next_char): Don't try to lookup the cache for the
  +     next/previous character if nothing is cached there yet, or if we
  +     were just reseat()'ed to a new position.
  +
  +     * xdisp.c (set_cursor_from_row): Set start and stop points
  +     according to the row's direction when priming the loop that looks
  +     for the glyph on which to display cursor.
  +     (single_display_spec_intangible_p): Function deleted.
  +     (display_prop_intangible_p): Reimplement to call
  +     handle_display_spec instead of single_display_spec_intangible_p.
  +     Accept 3 additional arguments needed by handle_display_spec.
  +     This fixes incorrect cursor motion across display property with complex
  +     values: lists, `(when COND...)' forms, etc.
  +     (single_display_spec_string_p): Support property values that are
  +     lists with the argument STRING its top-level element.
  +     (display_prop_string_p): Fix the condition for processing a
  +     property that is a list to be consistent with handle_display_spec.
  +     (handle_display_spec): New function, refactored from the
  +     last portion of handle_display_prop.
  +     (compute_display_string_pos): Accept additional argument
  +     FRAME_WINDOW_P.  Call handle_display_spec to determine whether the
  +     value of a `display' property is a "replacing spec".
  +     (handle_single_display_spec): Accept 2 additional arguments BUFPOS
  +     and FRAME_WINDOW_P.  If IT is NULL, don't set up the iterator from
  +     the display property, but just return a value indicating whether
  +     the display property will replace the characters it covers.
  +     (Fcurrent_bidi_paragraph_direction): Initialize the nchars and
  +     frame_window_p members of struct bidi_it.
  +     (compute_display_string_pos, compute_display_string_end):
  +     New functions.
  +     (push_it): Accept second argument POSITION, where pop_it should
  +     jump to continue iteration.
  +     (reseat_1): Initialize bidi_it.disp_pos.
  +
  +     * keyboard.c (adjust_point_for_property): Adjust the call to
  +     display_prop_intangible_p to its new signature.
  +
  +     * dispextern.h (struct bidi_it): New member frame_window_p.
  +     (bidi_init_it): Update prototypes.
  +     (display_prop_intangible_p): Update prototype.
  +     (compute_display_string_pos, compute_display_string_end):
  +     Declare prototypes.
  +     (struct bidi_it): New members nchars and disp_pos.  ch_len is now
  +     EMACS_INT.
   
  -     * print.c (safe_debug_print): Use XHASH.
  +2011-06-02  Paul Eggert  <eggert@cs.ucla.edu>
  +
  +     Malloc failure behavior now depends on size of allocation.
  +     * alloc.c (buffer_memory_full, memory_full): New arg NBYTES.
  +     * lisp.h: Change signatures accordingly.
  +     * alloc.c, buffer.c, editfns.c, menu.c, minibuf.c, xterm.c:
  +     All callers changed.  (Bug#8762)
  +
  +     * gnutls.c: Use Emacs's memory allocators.
  +     Without this change, the gnutls library would invoke malloc etc.
  +     directly, which causes problems on non-SYNC_INPUT hosts, and which
  +     runs afoul of improving memory_full behavior.  (Bug#8761)
  +     (fn_gnutls_global_set_mem_functions): New macro or function pointer.
  +     (emacs_gnutls_global_init): Use it to specify xmalloc, xrealloc,
  +     xfree instead of the default malloc, realloc, free.
  +     (Fgnutls_boot): No need to check for memory allocation failure,
  +     since xmalloc does that for us.
  +
  +     Remove arbitrary limit of 2**31 entries in hash tables.  (Bug#8771)
  +     * category.c (hash_get_category_set):
  +     * ccl.c (ccl_driver):
  +     * charset.c (Fdefine_charset_internal):
  +     * charset.h (struct charset.hash_index):
  +     * composite.c (get_composition_id, gstring_lookup_cache)
  +     (composition_gstring_put_cache):
  +     * composite.h (struct composition.hash_index):
  +     * dispextern.h (struct image.hash):
  +     * fns.c (next_almost_prime, larger_vector, cmpfn_eql)
  +     (cmpfn_equal, cmpfn_user_defined, hashfn_eq, hashfn_eql)
  +     (hashfn_equal, hashfn_user_defined, make_hash_table)
  +     (maybe_resize_hash_table, hash_lookup, hash_put)
  +     (hash_remove_from_table, hash_clear, sweep_weak_table, SXHASH_COMBINE)
  +     (sxhash_string, sxhash_list, sxhash_vector, sxhash_bool_vector)
  +     (Fsxhash, Fgethash, Fputhash, Fmaphash):
  +     * image.c (make_image, search_image_cache, lookup_image)
  +     (xpm_put_color_table_h):
  +     * lisp.h (struct Lisp_Hash_Table):
  +     * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
  +     * print.c (print): Use 'EMACS_UINT' and 'EMACS_INT'
  +     for hashes and hash indexes, instead of 'unsigned' and 'int'.
  +     * alloc.c (allocate_vectorlike):
  +     Check for overflow in vector size calculations.
  +     * ccl.c (ccl_driver):
  +     Check for overflow when converting EMACS_INT to int.
  +     * fns.c, image.c: Remove unnecessary static decls that would otherwise
  +     need to be updated by these changes.
  +     * fns.c (make_hash_table, maybe_resize_hash_table):
  +     Check for integer overflow with large hash tables.
  +     (make_hash_table, maybe_resize_hash_table, Fmake_hash_table):
  +     Prefer the faster XFLOAT_DATA to XFLOATINT where either will do.
  +     (SXHASH_REDUCE): New macro.
  +     (sxhash_string, sxhash_list, sxhash_vector, sxhash_bool_vector):
  +     Use it instead of discarding useful hash info with large hash values.
  +     (sxhash_float): New function.
  +     (sxhash): Use it.  No more need for "& INTMASK" due to above changes.
  +     * lisp.h (FIXNUM_BITS): New macro, useful for SXHASH_REDUCE etc.
  +     (MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM, INTMASK):
  +     Rewrite to use FIXNUM_BITS, as this simplifies things.
  +     (next_almost_prime, larger_vector, sxhash, hash_lookup, hash_put):
  +     Adjust signatures to match updated version of code.
  +     (consing_since_gc): Now EMACS_INT, since a single hash table can
  +     use more than INT_MAX bytes.
   
  -     * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
  -     Lisp elements such as tags.
  -     (XHASH): New macro.
  -     (EQ): Use it.
  -     (SREF, SSET, STRING_COPYIN): Use SDATA.
  -     (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
  +2011-06-01  Dan Nicolaescu  <dann@ics.uci.edu>
   
  -     * alloc.c (mark_terminal): Remove left-over declaration.
  -     (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
  -     (allocate_vectorlike): Remove type argument.  Adjust callers.
  -     (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
  -     Only handle the one remaining MEM_TYPE_VECTORLIKE.
  +     Make it possible to build with GCC-4.6+ -O2 -flto.
   
  -     * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
  -     to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
  -     (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
  -     (lisp_align_free, make_interval, allocate_string, allocate_string_data)
  -     (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
  -     Use them.
  +     * emacs.c (__malloc_initialize_hook): Mark as EXTERNALLY_VISIBLE.
   
  -     * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
  -     Don't let signal handlers run when a GC is freed but not yet NULL'ed.
  -     (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
  +2011-06-01  Stefan Monnier  <monnier@iro.umontreal.ca>
   
  -2007-09-28  Dan Nicolaescu  <dann@ics.uci.edu>
  +     * minibuf.c (get_minibuffer, read_minibuf_unwind):
  +     Call minibuffer-inactive-mode.
   
  -     * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
  -     loaded by default.
  +2011-05-31  Juanma Barranquero  <lekktu@gmail.com>
   
  -2007-09-28  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * makefile.w32-in ($(BLD)/data.$(O), $(BLD)/editfns.$(O)):
  +     Update dependencies.
   
  -     * term.c (Fgpm_mouse_start): Don't signal an error if already activated
  -     on this tty.
  -     (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
  +2011-05-31  Dan Nicolaescu  <dann@ics.uci.edu>
   
  -     * term.c (mouse_face_window): Rename from Qmouse_face_window.
  -     Update all users.
  -     (handle_one_term_event): Use Gpm_DrawPointer.
  -     (Fgpm_mouse_start): Rename from Fterm_open_connection.
  -     Signal errors instead of returning nil.  Always return nil.
  -     (Fgpm_mouse_stop): Rename from Fterm_close_connection.
  -     Make it a noop if gpm-mouse was not activated.
  -     (syms_of_term): Update names.
  +     * data.c (init_data): Remove code for UTS, this system is not
  +     supported anymore.
   
  -2007-09-27  Stefan Monnier  <monnier@iro.umontreal.ca>
  +2011-05-31  Dan Nicolaescu  <dann@ics.uci.edu>
   
  -     * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
  -     (init_sys_modes): Check that gpm_tty is the current tty.
  +     Don't force ./temacs to start in terminal mode.
   
  -     * alloc.c (allocate_terminal): Set the vector size to only count the
  -     lisp fields.  Initialize those to nil.
  -     (mark_object): Don't treat terminals specially.
  -     (mark_terminal): Remove.
  -     (mark_terminals): Use mark_object instead.
  +     * frame.c (make_initial_frame): Initialize faces in all cases, not
  +     only when CANNOT_DUMP is defined.
  +     * dispnew.c (init_display): Remove CANNOT_DUMP condition.
   
  -     * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
  -     the GC to the beginning.
  +2011-05-31  Dan Nicolaescu  <dann@ics.uci.edu>
   
  -     * indent.h:
  -     * indent.c: Use EMACS_INT for ints coming from Elisp data.
  +     * dispnew.c (add_window_display_history): Use const for the string
  +     pointer.  Remove declaration, not needed.
   
  -     * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
  +2011-05-31  Paul Eggert  <eggert@cs.ucla.edu>
   
  -2007-09-25  Jason Rumney  <jasonr@gnu.org>
  +     Use 'inline', not 'INLINE'.
  +     <http://lists.gnu.org/archive/html/emacs-devel/2011-05/msg00914.html>
  +     * alloc.c, fontset.c (INLINE): Remove.
  +     * alloc.c, bidi.c, charset.c, coding.c, dispnew.c, fns.c, image.c:
  +     * intervals.c, keyboard.c, process.c, syntax.c, textprop.c, w32term.c:
  +     * xdisp.c, xfaces.c, xterm.c: Replace all uses of INLINE with inline.
  +     * gmalloc.c (register_heapinfo): Use inline unconditionally.
  +     * lisp.h (LISP_MAKE_RVALUE): Use inline, not __inline__.
   
  -     * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
  +2011-05-31  Dan Nicolaescu  <dann@ics.uci.edu>
   
  -     * w32console.c (create_w32cons_output): Remove.
  +     Make it possible to run ./temacs.
   
  -     * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
  +     * callproc.c (set_initial_environment): Remove CANNOT_DUMP code,
  +     syms_of_callproc does the same thing.  Remove test for
  +     "initialized", do it in the caller.
  +     * emacs.c (main): Avoid calling set_initial_environment when dumping.
   
  -     * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
  -     (reset_sys_modes): Use reset_terminal_modes_hook.
  +2011-05-31  Stefan Monnier  <monnier@iro.umontreal.ca>
   
  -2007-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * minibuf.c (Finternal_complete_buffer): Return `category' metadata.
  +     (read_minibuf): Use get_minibuffer.
  +     (syms_of_minibuf): Use DEFSYM.
  +     (Qmetadata): New var.
  +     * data.c (Qbuffer): Don't make it static.
  +     (syms_of_data): Use DEFSYM.
   
  -     * eval.c (do_autoload): Don't output any message.
  +2011-05-31  Paul Eggert  <eggert@cs.ucla.edu>
   
  -2007-09-24  Juri Linkov  <juri@jurta.org>
  +     * ccl.c (CCL_CODE_RANGE): Allow negative numbers.  (Bug#8751)
  +     (CCL_CODE_MIN): New macro.
   
  -     * emacs.c (standard_args): Change priority of "--no-splash"
  -     from 40 to 3.  Add "--no-desktop" with the same priority.
  +2011-05-30  Paul Eggert  <eggert@cs.ucla.edu>
   
  -2007-09-23  Dmitry Antipov  <dmantipov@yandex.ru>
  +     * alloc.c (lisp_align_malloc): Omit unnecessary val==NULL tests.
   
  -     * alloc.c (gc_sweep): Check cons cell mark bits word by word
  -     and optimize the case where they are all 1.
  +     * eval.c (Qdebug): Now static.
  +     * lisp.h (Qdebug): Remove decl.  This reverts a part of the
  +     2011-04-26T11:26:05Z!dan.colascione@gmail.com that inadvertently undid part of
  +     2011-04-14T06:48:41Z!eggert@cs.ucla.edu.
   
  -2007-09-23  Johannes Weiner  <hannes@saeurebad.de>
  +2011-05-29  Chong Yidong  <cyd@stupidchicken.com>
   
  -     * lisp.h (abs): Define if not defined.
  -     * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
  -     Don't define `abs', since it's defined in lisp.h.
  +     * image.c: Various fixes to ImageMagick code comments.
  +     (Fimagemagick_types): Doc fix.
   
  -2007-09-22  Eli Zaretskii  <eliz@gnu.org>
  +2011-05-29  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * term.c (DEV_TTY): New macro.  Provide a definition for MS-Windows.
  -     (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
  -     (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
  -     (init_tty): Use DEV_TTY instead of "/dev/tty".
  -     [WINDOWSNT]: No need to protect from NAME arg being null.
  +     Minor fixes prompted by GCC 4.6.0 warnings.
   
  -2007-09-21  Dan Nicolaescu  <dann@ics.uci.edu>
  +     * xselect.c (converted_selections, conversion_fail_tag): Now static.
   
  -     * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
  -     up the tty state.
  +     * emacs.c [HAVE_X_WINDOWS]: Include "xterm.h".
  +     (x_clipboard_manager_save_all): Move extern decl to ...
  +     * xterm.h: ... here, so that it can be checked for consistency.
   
  -2007-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
  +2011-05-29  Chong Yidong  <cyd@stupidchicken.com>
   
  -     * termhooks.h (term_gpm): Delete.  Use gpm_tty's NULLness instead.
  -     (gpm_tty): Change its type.
  -     * term.c (term_gpm): Delete.  Use gpm_tty's NULLness instead.
  -     (gpm_tty): Change its type and initialize it.
  -     (Fterm_open_connection): Check the frame is indeed a tty.
  -     Use the new gpm_tty.
  -     (Fterm_close_connection): Use the new gpm_tty.
  -     * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
  -     * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
  +     * xselect.c (x_clipboard_manager_save_frame)
  +     (x_clipboard_manager_save_all): New functions.
  +     (Fx_clipboard_manager_save): Lisp function deleted.
   
  -2007-09-21  Juanma Barranquero  <lekktu@gmail.com>
  +     * emacs.c (Fkill_emacs): Call x_clipboard_manager_save_all.
  +     * frame.c (delete_frame): Call x_clipboard_manager_save_frame.
   
  -     * w32term.c (x_draw_glyph_string): Use strike_through_color, not
  -     underline_color, to draw strike-through.
  +     * xterm.h: Update prototype.
   
  -2007-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
  +2011-05-28  William Xu  <william.xwl@gmail.com>
   
  -     * lisp.h (allocate_terminal): Declare.
  +     * nsterm.m (ns_term_shutdown): Synchronize user defaults before
  +     exiting (Bug#8239).
   
  -     * window.c (candidate_window_p): Consider frames that are being placed
  -     by the user as somewhere between visible and iconified.
  -     (window_loop): Prefer windows on the current frame.
  -     (Fselect_window): Move the use of select-frame to the beginning so we
  -     can just delegate all the work (it'll call us back anyway).
  +2011-05-28  Jim Meyering  <meyering@redhat.com>
   
  -     * frame.c (Qdisplay_environment_variable):
  -     * frame.h (Qdisplay_environment_variable): Delete.
  +     Avoid a sign-extension bug in crypto_hash_function.
  +     * fns.c (to_uchar): Define.
  +     (crypto_hash_function): Use it to convert some newly-signed
  +     variables to unsigned, to avoid sign-extension bugs.  For example,
  +     without this change, (md5 "truc") would evaluate to
  +     45723a2aff78ff4fff7fff1114760e62 rather than the expected
  +     45723a2af3788c4ff17f8d1114760e62.  Reported by Antoine Levitt in
  +     https://lists.gnu.org/archive/html/emacs-devel/2011-05/msg00883.html.
   
  -     * .gdbinit (xbacktrace): Print the arg's address rather than the value
  -     of the first arg, since that value may be a union.
  +2011-05-27  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * callproc.c (child_setup, getenv_internal): Use the frame's `display'
  -     parameter rather than Qdisplay_environment_variable.  If all else
  -     fails, look for DISPLAY in initial-environment.
  +     Integer overflow fixes.
   
  -2007-09-21  Glenn Morris  <rgm@gnu.org>
  +     * dbusbind.c: Serial number integer overflow fixes.
  +     (CHECK_DBUS_SERIAL_GET_SERIAL): New macro.
  +     (Fdbus_call_method_asynchronously, xd_read_message_1): Use a float
  +     to hold a serial number that is too large for a fixnum.
  +     (Fdbus_method_return_internal, Fdbus_method_error_internal):
  +     Check for serial numbers out of range.  Decode any serial number
  +     that was so large that it became a float.  (Bug#8722)
  +
  +     * dbusbind.c: Use XFASTINT rather than XUINT, and check for nonneg.
  +     (Fdbus_call_method, Fdbus_call_method_asynchronously):
  +     Use XFASTINT rather than XUINT when numbers are nonnegative.
  +     (xd_append_arg, Fdbus_method_return_internal):
  +     (Fdbus_method_error_internal): Likewise.  Also, for unsigned
  +     arguments, check that Lisp number is nonnegative, rather than
  +     silently wrapping negative numbers around.  (Bug#8722)
  +     (xd_read_message_1): Don't assume dbus_uint32_t can fit in int.
  +     (Bug#8722)
  +
  +     * data.c (arith_driver, Flsh): Avoid unnecessary casts to EMACS_UINT.
  +
  +     * ccl.c (ccl_driver): Redo slightly to avoid the need for 'unsigned'.
  +
  +     ccl: add integer overflow checks
  +     * ccl.c (CCL_CODE_MAX, GET_CCL_RANGE, GET_CCL_CODE, GET_CCL_INT):
  +     (IN_INT_RANGE): New macros.
  +     (ccl_driver): Use them to check for integer overflow when
  +     decoding a CCL program.  Many of the new checks are whether XINT (x)
  +     fits in int; it doesn't always, on 64-bit hosts.  The new version
  +     doesn't catch all possible integer overflows, but it's an
  +     improvement.  (Bug#8719)
  +
  +     * alloc.c (make_event_array): Use XINT, not XUINT.
  +     There's no need for unsigned here.
  +
  +     * mem-limits.h (EXCEEDS_LISP_PTR) [!USE_LSB_TAG]: EMACS_UINT -> uintptr_t
  +     This follows up to the 2011-05-06 change that substituted uintptr_t
  +     for EMACS_INT.  This case wasn't caught back then.
  +
  +     Rework Fformat to avoid integer overflow issues.
  +     * editfns.c: Include <float.h> unconditionally, as it's everywhere
  +     now (part of C89).  Include <verify.h>.
  +     (MAX_10_EXP, CONVERTED_BYTE_SIZE): Remove; no longer needed.
  +     (pWIDE, pWIDElen, signed_wide, unsigned_wide): New defns.
  +     (Fformat): Avoid the prepass trying to compute sizes; it was only
  +     approximate and thus did not catch overflow reliably.  Instead, walk
  +     through the format just once, formatting and computing sizes as we go,
  +     checking for integer overflow at every step, and allocating a larger
  +     buffer as needed.  Keep track separately whether the format is
  +     multibyte.  Keep only the most-recently calculated precision, rather
  +     than them all.  Record whether each argument has been converted to
  +     string.  Use EMACS_INT, not int, for byte and char and arg counts.
  +     Support field widths and precisions larger than INT_MAX.  Avoid
  +     sprintf's undefined behavior with conversion specifications such as %#d
  +     and %.0c.  Fix bug with strchr succeeding on '\0' when looking for
  +     flags.  Fix bug with (format "%c" 256.0).  Avoid integer overflow when
  +     formatting out-of-range floating point numbers with int
  +     formats.  (Bug#8668)
  +
  +     * lisp.h (FIXNUM_OVERFLOW_P): Work even if arg is a NaN.
  +
  +     * data.c: Avoid integer truncation in expressions involving floats.
  +     * data.c: Include <intprops.h>.
  +     (arith_driver): When there's an integer overflow in an expression
  +     involving floating point, convert the integers to floating point
  +     so that the resulting value does not suffer from catastrophic
  +     integer truncation.  For example, on a 64-bit host (* 4
  +     most-negative-fixnum 0.5) should yield about -4.6e+18, not zero.
  +     Do not rely on undefined behavior after integer overflow.
  +
  +     merge count_size_as_multibyte, parse_str_to_multibyte
  +     * character.c, character.h (count_size_as_multibyte):
  +     Rename from parse_str_to_multibyte; all uses changed.
  +     Check for integer overflow.
  +     * insdel.c, lisp.h (count_size_as_multibyte): Remove,
  +     since it's now a duplicate of the other.  This is more of
  +     a character than a buffer op, so better that it's in character.c.
  +     * fns.c, print.c: Adjust to above changes.
  +
  +2011-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
  +
  +     * xselect.c (x_convert_selection): Yet another int/Lisp_Object mixup.
  +
  +2011-05-27  Paul Eggert  <eggert@cs.ucla.edu>
  +
  +     * xselect.c: Fix minor problems prompted by GCC 4.6.0 warnings.
  +     (x_handle_selection_request, frame_for_x_selection): Remove unused vars.
  +     (x_clipboard_manager_save): Now static.
  +     (Fx_clipboard_manager_save): Rename local to avoid shadowing.
  +
  +     * fns.c: Fix minor problems prompted by GCC 4.6.0 warnings.
  +     (crypto_hash_function): Now static.
  +     Fix pointer signedness problems.  Avoid unnecessary initializations.
  +
  +2011-05-27  Chong Yidong  <cyd@stupidchicken.com>
  +
  +     * termhooks.h (Vselection_alist): Make it terminal-local.
  +
  +     * terminal.c (create_terminal): Initialize it.
  +
  +     * xselect.c: Support for clipboard managers.
  +     (Vselection_alist): Move to termhooks.h as terminal-local var.
  +     (LOCAL_SELECTION): New macro.
  +     (x_atom_to_symbol): Handle x_display_info_for_display fail case.
  +     (symbol_to_x_atom): Remove gratuitous arg.
  +     (x_handle_selection_request, lisp_data_to_selection_data)
  +     (x_get_foreign_selection, Fx_register_dnd_atom): Callers changed.
  +     (x_own_selection, x_get_local_selection, x_convert_selection):
  +     New arg, specifying work frame.  Use terminal-local Vselection_alist.
  +     (some_frame_on_display): Delete unused function.
  +     (Fx_own_selection_internal, Fx_get_selection_internal)
  +     (Fx_disown_selection_internal, Fx_selection_owner_p)
  +     (Fx_selection_exists_p): New optional frame arg.
  +     (frame_for_x_selection, Fx_clipboard_manager_save): New functions.
  +     (x_handle_selection_clear): Don't treat other terminals with the
  +     same keyboard specially.  Use the terminal-local Vselection_alist.
  +     (x_clear_frame_selections): Use Frun_hook_with_args.
  +
  +     * xterm.c (x_term_init): Intern ATOM and CLIPBOARD_MANAGER atoms.
  +
  +     * xterm.h: Add support for those atoms.
  +
  +2011-05-26  Chong Yidong  <cyd@stupidchicken.com>
  +
  +     * xselect.c: ICCCM-compliant handling of MULTIPLE targets.
  +     (converted_selections, conversion_fail_tag): New global variables.
  +     (x_selection_request_lisp_error): Free the above.
  +     (x_get_local_selection): Remove unnecessary code.
  +     (x_reply_selection_request): Args changed; handle arbitrary array
  +     of converted selections stored in converted_selections.
  +     Separate the XChangeProperty and SelectionNotify steps.
  +     (x_handle_selection_request): Rewrite to handle MULTIPLE target.
  +     (x_convert_selection): New function.
  +     (x_handle_selection_event): Simplify.
  +     (x_get_foreign_selection): Don't ignore incoming requests while
  +     waiting for an answer; this will fail when we implement
  +     SAVE_TARGETS, and seems unnecessary anyway.
  +     (selection_data_to_lisp_data): Recognize ATOM_PAIR type.
  +     (Vx_sent_selection_functions): Doc fix.
  +
  +2011-05-26  Leo Liu  <sdl.web@gmail.com>
  +
  +     * editfns.c (Ftranspose_regions): Allow empty regions.  (Bug#8699)
   
  -     * Makefile.in (emacstool): Remove target.
  -     (lisp, shortlisp): Remove termdev.elc.
  +2011-05-25  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
   
  -2007-09-21  Markus Triska  <markus.triska@gmx.at>
  +     * dispextern.h (struct glyph_row): New member fringe_bitmap_periodic_p.
   
  -     * xterm.c (x_delete_display): Compile session management conditionally.
  +     * dispnew.c (shift_glyph_matrix, scrolling_window): Mark scrolled row
  +     for fringe update if it has periodic bitmap.
  +     (row_equal_p): Also compare left_fringe_offset, right_fringe_offset,
  +     and fringe_bitmap_periodic_p.
   
  -2007-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * fringe.c (get_fringe_bitmap_data): New function.
  +     (draw_fringe_bitmap_1, update_window_fringes): Use it.
  +     (update_window_fringes): Record periodicity of fringe bitmap in glyph
  +     row.  Mark glyph row for fringe update if periodicity changed.
   
  -     * callproc.c (getenv_internal_1): New function.
  -     (getenv_internal): Use it.
  -     (Fgetenv_internal): Use it.  Accept an env-list as optional arg.
  +     * xdisp.c (try_window_reusing_current_matrix): Don't mark scrolled row
  +     for fringe update unless it has periodic bitmap.
   
  -     * terminal.c (get_terminal): Don't accept ints to represent terminals.
  -     (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
  -     (Fset_terminal_parameter): Work with dead terminals as well.
  -     (Fmodify_terminal_parameters): Remove.
  +2011-05-25  Kenichi Handa  <handa@m17n.org>
   
  -     * terminal.c (get_terminal): Handle terminals.
  -     Make sure the terminal returned is live.
  -     (create_terminal): Use allocate_terminal.
  -     (mark_terminals): Move to alloc.c.
  -     (delete_terminal): Use terminal->name as liveness status.
  -     NULL out fields after freeing their contents.
  -     Don't deallocate the object.
  -     (Fframe_terminal): Use FRAME_TERMINAL.  Return the terminal object
  -     rather than an int.
  -     (Fterminal_live_p): Accept non-integer arguments.
  -     (Fterminal_list): Return terminal objects rather than an ints.
  +     * xdisp.c (get_next_display_element): Set correct it->face_id for
  +     a static composition.
   
  -     * alloc.c (enum mem_type): New member for `terminal' objects.
  -     (allocate_terminal): New function.
  -     (mark_maybe_pointer, valid_lisp_object_p, mark_object):
  -     Handle terminals.
  -     (mark_terminal): New fun.
  -     (mark_terminals): Move from terminal.c.
  +2011-05-24  Leo Liu  <sdl.web@gmail.com>
   
  -     * term.c (get_tty_terminal): Don't treat output_initial specially.
  -     (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
  -     (delete_tty): Use terminal->name as liveness status.
  +     * deps.mk (fns.o):
  +     * makefile.w32-in ($(BLD)/fns.$(O)): Include sha1.h.
   
  -     * termhooks.h (struct terminal): Make it into a pseudovector.
  -     Remove `deleted' replaced by checking `name's nullness.
  +     * fns.c (crypto_hash_function, Fsha1): New function.
  +     (Fmd5): Use crypto_hash_function.
  +     (syms_of_fns): Add Ssha1.
   
  -     * print.c (print_object): Handle terminals.
  +2011-05-22  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * lisp.h (enum pvec_type): New `terminal' pseudovector.
  -     (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
  +     * gnutls.c: Remove unused macros.
  +     (fn_gnutls_transport_set_lowat, fn_gnutls_transport_set_pull_function):
  +     (fn_gnutls_transport_set_push_function) [!WINDOWSNT]:
  +     Remove macros that are defined and never used.
  +     Caught by gcc -Wunused-macros (GCC 4.6.0, Fedora 14).
   
  -     * frame.c (make_terminal_frame):
  -     * keyboard.c (tty_read_avail_input):
  -     * w32term.c (x_delete_terminal):
  -     * xfns.c (Fx_create_frame, x_create_tip_frame):
  -     * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
  +2011-05-22  Chong Yidong  <cyd@stupidchicken.com>
   
  -2007-09-20  Glenn Morris  <rgm@gnu.org>
  +     * xselect.c (syms_of_xselect): Remove unused symbol SAVE_TARGETS.
  +     (Fx_get_selection_internal): Minor cleanup.
  +     (Fx_own_selection_internal): Rename arguments for consistency with
  +     select.el.
   
  -     * process.c (Fmake_network_process): Doc fix.
  +2011-05-22  Paul Eggert  <eggert@cs.ucla.edu>
   
  -2007-09-19  Jason Rumney  <jasonr@gnu.org>
  +     * xselect.c (QSAVE_TARGETS): New static var, to fix build failure.
   
  -     * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
  +2011-05-22  Chong Yidong  <cyd@stupidchicken.com>
   
  -2007-09-19  Michaël Cadilhac  <michael@cadilhac.name>
  +     * xselect.c (syms_of_xselect): Include character.h; use DEFSYM.
   
  -     * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
  -     Fix a C warning regarding variable constness.
  +2011-05-21  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
   
  -     * xterm.c (handle_one_xevent): Fix a C warning.
  +     * dispnew.c (scrolling_window): Don't exclude the case that the
  +     last enabled row in the desired matrix touches the bottom boundary.
   
  -2007-09-18  Jason Rumney  <jasonr@gnu.org>
  +2011-05-21  Glenn Morris  <rgm@gnu.org>
   
  -     * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
  +     * Makefile.in ($(etc)/DOC): Make second command line even shorter.
  +     (SOME_MACHINE_OBJECTS): Replace FONT_OBJ by its maximal expansion,
  +     and add some more files.
   
  -2007-09-17  Jan Djärv  <jan.h.d@swipnet.se>
  +2011-05-20  Eli Zaretskii  <eliz@gnu.org>
   
  -     * gtkutil.c (gdpy_def): New variable.
  -     (xg_initialize): Initialize gdpy_def.
  -     (xg_display_close): If no other display exists, set gdpy_def to a
  -     new connection.
  +     * callproc.c (Fcall_process) [MSDOS]: Fix arguments to
  +     report_file_error introduced by the change from 2011-05-07.
   
  -2007-09-16  Jan Djärv  <jan.h.d@swipnet.se>
  +2011-05-20  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
  -     when we have no file name for the icon.
  -     (xg_tool_bar_expose_callback): Remove.
  -     (xg_create_tool_bar): Don't connect expose signal to
  -     xg_tool_bar_expose_callback.
  -     (xg_get_file_with_chooser): Move GCPRO1 after declarations.
  +     * systime.h (Time): Define only if emacs is defined.
  +     This is to allow ../lib-src/profile.c to be compiled on FreeBSD,
  +     where the include path doesn't have X11/X.h by default.  See
  +     <http://lists.gnu.org/archive/html/emacs-devel/2011-05/msg00561.html>.
   
  -2007-09-16  Andreas Schwab  <schwab@suse.de>
  +2011-05-20 Kenichi Handa  <handa@m17n.org>
   
  -     * alloc.c (reset_malloc_hooks): Set the hooks to the previous
  -     values instead of zapping them.
  +     * composite.c (find_automatic_composition): Fix previous change.
   
  -2007-09-14  Glenn Morris  <rgm@gnu.org>
  +2011-05-20  Glenn Morris  <rgm@gnu.org>
   
  -     * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
  -     * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
  -     * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
  -     scope and rename to omfib_buffer for clarity.
  -     (gif_load) <interlace_start, interlace_increment>: Move to file scope.
  +     * lisp.mk: New file, split from Makefile.in.
  +     * Makefile.in (lisp): Move to separate file, inserted by @lisp_frag@.
  +     (shortlisp): Remove.
  +     ($(etc)/DOC): Edit lisp.mk rather than using $shortlisp.
   
  -2007-09-14  Kenichi Handa  <handa@m17n.org>
  +2011-05-19  Glenn Morris  <rgm@gnu.org>
   
  -     * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
  +     * Makefile.in (MSDOS_SUPPORT_REAL, MSDOS_SUPPORT, NS_SUPPORT)
  +     (REAL_MOUSE_SUPPORT, GPM_MOUSE_SUPPORT, MOUSE_SUPPORT, TOOLTIP_SUPPORT)
  +     (BASE_WINDOW_SUPPORT, X_WINDOW_SUPPORT, WINDOW_SUPPORT): Remove.
  +     (lisp): Set the order to that of loadup.el.
  +     (shortlisp): Make it a copy of $lisp.
  +     (SOME_MACHINE_LISP): Remove.
  +     ($(etc)/DOC): Depend just on $lisp, not $SOME_MACHINE_LISP too.
  +     Use just $shortlisp, not $SOME_MACHINE_LISP too.
   
  -2007-09-13  Jason Rumney  <jasonr@gnu.org>
  +2011-05-18  Kenichi Handa  <handa@m17n.org>
   
  -     * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
  +     * composite.c (CHAR_COMPOSABLE_P): Add more check for efficiency.
  +     (BACKWARD_CHAR): Wrap the arg STOP by parenthesis.
  +     (find_automatic_composition): Mostly rewrite for efficiency.
   
  -     * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
  +2011-05-18  Juanma Barranquero  <lekktu@gmail.com>
   
  -     * macterm.c (mac_initialize): Don't call mac_init_fringe here.
  -     (mac_term_init): Call here instead, passing rif.
  +     * makefile.w32-in: Update dependencies.
   
  -2007-09-13  Glenn Morris  <rgm@gnu.org>
  +2011-05-18  Christoph Scholtes  <cschol2112@googlemail.com>
   
  -     * s/hpux.h: No longer define `static' as nothing.
  +     * menu.c: Include limits.h (fixes the MS-Windows build broken by
  +     2011-06-18T18:49:19Z!cyd@stupidchicken.com).
   
  -2007-09-13  Johan Bockgård  <bojohan@gnu.org>
  +2011-05-18  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * callint.c (Fcall_interactively): Remove unused var `fun'.
  +     Fix some integer overflow issues, such as string length overflow.
   
  -2007-09-12  Romain Francoise  <romain@orebokech.com>
  +     * insdel.c (count_size_as_multibyte): Check for string overflow.
   
  -     * window.c (prefer_window_split_horizontally, display_buffer):
  -     Revert 2007-09-08 change.
  +     * character.c (lisp_string_width): Check for string overflow.
  +     Use EMACS_INT, not int, for string indexes and lengths; in
  +     particular, 2nd arg is now EMACS_INT, not int.  Do not crash if
  +     the resulting string length overflows an EMACS_INT; instead,
  +     report a string overflow if no precision given.  When checking for
  +     precision exhaustion, use a check that cannot possibly have
  +     integer overflow.  (Bug#8675)
  +     * character.h (lisp_string_width): Adjust to new signature.
   
  -2007-09-12  Glenn Morris  <rgm@gnu.org>
  +     * alloc.c (string_overflow): New function.
  +     (Fmake_string): Use it.  This doesn't change behavior, but saves
  +     a few bytes and will simplify future changes.
  +     * character.c (string_escape_byte8): Likewise.
  +     * lisp.h (string_overflow): New decl.
   
  -     * alloca.c: Remove file.
  -     * Makefile.in (alloca): Do not undef.
  -     (allocaobj, alloca.o): Remove.
  -     (otherobj): Remove allocaobj.
  -     * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
  -     * regex.c (C_ALLOCA): Remove all references and code that was only
  -     used when this was defined.
  -     * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
  -     * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
  -     * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
  +     Fixups, following up to the user-interface timestamp change.
  +     * nsterm.m (last_mouse_movement_time, ns_mouse_position): Use Time
  +     for UI timestamps, instead of unsigned long.
  +     * msdos.c (mouse_get_pos): Likewise.
  +     * w32inevt.c (movement_time, w32_console_mouse_position): Likewise.
  +     * w32gui.h (Time): Define by including "systime.h" rather than by
  +     declaring it ourselves.  (Bug#8664)
   
  -     * Makefile.in (SOURCES, unlock, relock): Delete.
  +     * dispextern.h (struct image): Don't assume time_t <= unsigned long.
  +     * image.c (clear_image_cache): Likewise.
   
  -     * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
  -     (menu_grab_callback): All uses changed.
  +     * term.c (term_mouse_position): Don't assume time_t wraparound.
   
  -     * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
  -     (x_reply_selection_request): All uses changed.
  +     Be more systematic about user-interface timestamps.
  +     Before, the code sometimes used 'Time', sometimes 'unsigned long',
  +     and sometimes 'EMACS_UINT', to represent these timestamps.
  +     This change causes it to use 'Time' uniformly, as that's what X uses.
  +     This makes the code easier to follow, and makes it easier to catch
  +     integer overflow bugs such as Bug#8664.
  +     * frame.c (Fmouse_position, Fmouse_pixel_position):
  +     Use Time, not unsigned long, for user-interface timestamps.
  +     * keyboard.c (last_event_timestamp, kbd_buffer_get_event): Likewise.
  +     (button_down_time, make_lispy_position, make_lispy_movement): Likewise.
  +     * keyboard.h (last_event_timestamp): Likewise.
  +     * menu.c (Fx_popup_menu) [!HAVE_X_WINDOWS]: Likewise.
  +     * menu.h (xmenu_show): Likewise.
  +     * term.c (term_mouse_position): Likewise.
  +     * termhooks.h (struct input_event.timestamp): Likewise.
  +     (struct terminal.mouse_position_hook): Likewise.
  +     * xmenu.c (create_and_show_popup_menu, xmenu_show): Likewise.
  +     * xterm.c (XTmouse_position, x_scroll_bar_report_motion): Likewise.
  +     * systime.h (Time): New decl.  Pull it in from <X11/X.h> if
  +     HAVE_X_WINDOWS, otherwise define it as unsigned long, which is
  +     what it was before.
  +     * menu.h, termhooks.h: Include "systime.h", for Time.
  +
  +     * keyboard.c (make_lispy_event): Fix problem in integer overflow.
  +     Don't assume that the difference between two unsigned long values
  +     can fit into an integer.  At this point, we know button_down_time
  +     <= event->timestamp, so the difference must be nonnegative, so
  +     there's no need to cast the result if double-click-time is
  +     nonnegative, as it should be; check that it's nonnegative, just in
  +     case.  This bug is triggered when events are more than 2**31 ms
  +     apart (about 25 days).  (Bug#8664)
  +
  +     * xselect.c (last_event_timestamp): Remove duplicate decl.
  +     (x_own_selection): Remove needless cast to unsigned long.
  +
  +     * xmenu.c (set_frame_menubar): Use int, not EMACS_UINT, for indexes
  +     that always fit in int.  Use a sentinel instead of a counter, to
  +     avoid a temp and to allay GCC's concerns about possible int overflow.
  +     * frame.h (struct frame): Use int for menu_bar_items_used
  +     instead of EMACS_INT, since it always fits in int.
  +
  +     * menu.c (grow_menu_items): Check for int overflow.
  +
  +     * xmenu.c (set_frame_menubar): Don't mishandle vectors with no nils.
  +
  +     * xterm.c: Use EMACS_INT for Emacs modifiers, and int for X modifiers.
  +     Before, the code was not consistent.  These values cannot exceed
  +     2**31 - 1 so there's no need to make them unsigned.
  +     (x_x_to_emacs_modifiers): Accept int and return EMACS_INT.
  +     (x_emacs_to_x_modifiers): Accept EMACS_INT and return int.
  +     (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Reject non-integers
  +     as modifiers.
  +     * xterm.h (x_x_to_emacs_modifiers): Adjust to signature change.
  +
  +     * lisp.h (XINT) [USE_LISP_UNION_TYPE]: Cast to EMACS_INT.
  +     (XUINT) [USE_LISP_UNION_TYPE]: Cast to EMACS_UINT.
  +     Otherwise, GCC 4.6.0 warns about printf (pI, XINT (...)),
  +     presumably because the widths might not match.
  +
  +     * window.c (size_window): Avoid needless test at loop start.
  +
  +2011-05-18  Courtney Bane  <emacs-bugs-7626@cbane.org>  (tiny change)
  +
  +     * term.c (Fresume_tty): Restore hooks before reinitializing (bug#8687).
  +
  +2011-05-12  Drew Adams  <drew.adams@oracle.com>
   
  -2007-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * textprop.c (Fprevious_single_char_property_change): Doc fix (bug#8655).
   
  -     * lread.c (load_warn_old_style_backquotes): Change message to look
  -     better when it appears in the middle of byte-compiler messages.
  +2011-05-12  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
   
  -2007-09-10  Dan Nicolaescu  <dann@ics.uci.edu>
  +     * w32term.c (w32_draw_fringe_bitmap): Rename local vars `left' and
  +     `width' to `bar_area_x' and `bar_area_width', respectively.
  +     (x_scroll_run): Take account of fringe background extension.
   
  -     * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
  +     * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
  +     Rename local vars `left' and `width' to `bar_area_x' and
  +     `bar_area_width', respectively.
  +     (x_scroll_run) [USE_TOOLKIT_SCROLL_BARS]: Take account of fringe
  +     background extension.
   
  -     * xterm.c (x_create_terminal): Add comment.
  +2011-05-10  Jim Meyering  <meyering@redhat.com>
   
  -     * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
  +     * xdisp.c (x_intersect_rectangles): Fix typo "the the -> the".
   
  -2007-09-10  Richard Stallman  <rms@gnu.org>
  +2011-05-10  Juanma Barranquero  <lekktu@gmail.com>
   
  -     * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
  +     * image.c (Finit_image_library): Return t for built-in image types,
  +     like pbm and xbm.  (Bug#8640)
   
  -2007-09-10  Michaël Cadilhac  <michael@cadilhac.name>
  +2011-05-09  Andreas Schwab  <schwab@linux-m68k.org>
   
  -     * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
  -     (DEFUN): Document `intspec', use it instead of `prompt'.
  +     * w32menu.c (set_frame_menubar): Fix submenu allocation.
   
  -     * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
  +2011-05-07  Eli Zaretskii  <eliz@gnu.org>
   
  -     * data.c (Finteractive_form): If the interactive specification starts
  -     with a `(', use it as a Lisp form.
  +     * w32console.c (Fset_screen_color): Doc fix.
  +     (Fget_screen_color): New function.
  +     (syms_of_ntterm): Defsubr it.
   
  -     * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
  -     name and file modes.
  +     * callproc.c (call_process_cleanup) [MSDOS]: Don't close and
  +     unlink the temporary file if Fcall_process didn't create it in the
  +     first place.
  +     (Fcall_process) [MSDOS]: Don't create tempfile if stdout of the
  +     child process will be redirected to a file specified with `:file'.
  +     Don't try to re-open tempfile in that case, and set fd[0] to -1 as
  +     cue to call_process_cleanup not to close that handle.
   
  -     * callint.c (Fcall_interactively): Comment fixes.
  +2011-05-07  Ben Key  <bkey76@gmail.com>
   
  -2007-09-10  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * makefile.w32-in: The bootstrap-temacs rule now makes use of
  +     one of two shell specific rules, either bootstrap-temacs-CMD or
  +     bootstrap-temacs-SH.  The bootstrap-temacs-SH rule is identical
  +     to the previous implementation of the bootstrap-temacs rule.
  +     The bootstrap-temacs-CMD rule is similar to the previous
  +     implementation of the bootstrap-temacs rule except that it
  +     makes use of the ESC_CFLAGS variable instead of the CFLAGS
  +     variable.
   
  -     * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
  -     and compiled functions.
  +     These changes, along with some changes to nt/configure.bat,
  +     nt/gmake.defs, and nt/nmake.defs, are required to extend my
  +     earlier fix to add support for --cflags and --ldflags options
  +     that include quotes so that it works whether make uses cmd or
  +     sh as the shell.
   
  -2007-09-08  Fredrik Axelsson  <f.axelsson@gmail.com>
  +2011-05-06  Michael Albinus  <michael.albinus@gmx.de>
   
  -     * window.c (prefer_window_split_horizontally): New variable.
  -     (display_buffer): Consider splitting window horizontally depending
  -     on prefer_window_split_horizontally.
  +     * dbusbind.c (QCdbus_type_unix_fd): Declare static.
  +     (xd_remove_watch): Don't check QCdbus_type_unix_fd for SYMBOLP, it
  +     is a constant.
  +     (Fdbus_init_bus, xd_read_queued_messages): Bus can be a symbol or
  +     a string.  Handle both cases.
  +     (Fdbus_call_method_asynchronously, Fdbus_register_signal)
  +     (Fdbus_register_method): Use Qinvalid_function.
   
  -2007-09-08  Eli Zaretskii  <eliz@gnu.org>
  +2011-05-06  Juanma Barranquero  <lekktu@gmail.com>
   
  -     * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
  +     * makefile.w32-in: Update dependencies.
  +     (LISP_H): Add inttypes.h and stdin.h.
  +     (PROCESS_H): Add unistd.h.
  +
  +2011-05-06  Eli Zaretskii  <eliz@gnu.org>
  +
  +     * lread.c: Include limits.h (fixes the MS-Windows build broken by
  +     2011-05-06T07:13:19Z!eggert@cs.ucla.edu).
  +
  +2011-05-06  Paul Eggert  <eggert@cs.ucla.edu>
  +
  +     * image.c (Finit_image_library) [!HAVE_NTGUI]: Omit unused local.
  +
  +     * term.c (vfatal): Remove stray call to va_end.
  +     It's not needed and the C Standard doesn't allow it here anyway.
  +
  +     Use C99's va_copy to avoid undefined behavior on x86-64 GNU/Linux.
  +     * eval.c (verror): doprnt a copy of ap, not the original.  (Bug#8545)
  +
  +     * eval.c (verror): OK to create a string of up to MOST_POSITIVE_FIXNUM
  +     bytes.
  +
  +     * term.c: Don't include <stdarg.h>, as <lisp.h> does that.
  +
  +     * callproc.c (Fcall_process): Use 'volatile' to avoid vfork clobbering.
  +
  +     * process.c (Fformat_network_address): Fix typo: args2 -> *args2.
  +
  +     * xmenu.c (set_frame_menubar): Fix typo: int * -> int (3 times).
  +
  +     * coding.c (detect_coding_charset): Fix typo: * 2 -> *4 (Bug#8601).
  +
  +     * charset.h (struct charset.code_space): Now has 15 elements, not 16.
  +     * charset.c (Fdefine_charset_internal): Don't initialize
  +     charset.code_space[15].  The value was garbage, on hosts with
  +     32-bit int (Bug#8600).
   
  -2007-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * lread.c (read_integer): Be more consistent with string-to-number.
  +     Use string_to_number to do the actual conversion; this avoids
  +     rounding errors and fixes some other screwups.  Without this fix,
  +     for example, #x1fffffffffffffff was misread as -2305843009213693952.
  +     (digit_to_number): Move earlier, for benefit of read_integer.
  +     Return -1 if the digit is out of range for the base, -2 if it is
  +     not a digit in any supported base.  (Bug#8602)
   
  -     * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
  +     * doprnt.c (doprnt): Support arbitrary pI values, such as "I64".
   
  -     * frame.c (x_set_frame_parameters): Check number is positive before
  -     using XFASTINT.
  +     * dispnew.c (scrolling_window): Return 1 if we scrolled,
  +     to match comment at start of function.  This also removes a
  +     GCC warning about overflow in a 32+64-bit port.
   
  -     * window.c (freeze_window_start): Don't presume selected_window holds
  -     a window object.
  -     (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
  +     * lisp.h (EMACS_INT, EMACS_UINT, BITS_PER_EMACS_INT, pI): Simplify.
   
  -2007-09-07  Angelo Graziosi  <Angelo.Graziosi@roma1.infn.it>  (tiny change)
  +     * dbusbind.c: Do not use XPNTR on a value that may be an integer.
  +     Reported by Stefan Monnier in
  +     <http://lists.gnu.org/archive/html/emacs-devel/2011-04/msg00919.html>.
  +     (xd_remove_watch, Fdbus_init_bus, xd_read_queued_messages):
  +     Use SYMBOLP-guarded XSYMBOL, not XPNTR.
   
  -     * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
  +     * lisp.h (EMACS_INTPTR): Remove.  All uses changed to intptr_t.
  +     (EMACS_UINTPTR): Likewise, with uintptr_t.
   
  -2007-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * lisp.h: Prefer 64-bit EMACS_INT if available.
  +     (EMACS_INT, EMACS_UINT, BITS_PER_EMACS_INT, pI): Define to 64-bit
  +     on 32-bit hosts that have 64-bit int, so that they can access
  +     large files.
  +     However, temporarily disable this change unless the temporary
  +     symbol WIDE_EMACS_INT is defined.
   
  -     * window.c (Vsplit_window_preferred_function): New var.
  -     (Fdisplay_buffer): Use it.
  -     (syms_of_window): Export, and initialize it.
  +     * lread.c, process.c: Do not include <inttypes.h>; lisp.h does it now.
   
  -2007-09-06  Pixel  <pixel@mandriva.com>  (tiny change)
  +     Prefer intptr_t/uintptr_t for integers the same widths as pointers.
  +     This removes an assumption that EMACS_INT and long are the same
  +     width as pointers.  The assumption is true for Emacs porting targets
  +     now, but we want to make other targets possible.
  +     * lisp.h: Include <inttypes.h>, for INTPTR_MAX, UINTPTR_MAX.
  +     (EMACS_INTPTR, EMACS_UINTPTR): New macros.
  +     In the rest of the code, change types of integers that hold casted
  +     pointers to EMACS_INTPTR and EMACS_UINTPTR, systematically
  +     replacing EMACS_INT, long, EMACS_UINT, and unsigned long.
  +     (XTYPE): Don't cast arg to EMACS_UINT; normally is not needed.
  +     (XSET): Cast type of XTYPE arg to EMACS_INTPTR; it is needed here.
  +     No need to cast type when ORing.
  +     (XPNTR): Return a value of type EMACS_INTPTR or EMACS_UINTPTR.
  +     * alloc.c (lisp_align_malloc): Remove a no-longer-needed cast.
  +     * doc.c (store_function_docstring): Use EMACS_INTPTR, so as not to
  +     assume EMACS_INT is the same width as char *.
  +     * gtkutil.c (xg_gtk_scroll_destroy, xg_tool_bar_button_cb):
  +     (xg_tool_bar_callback, xg_tool_bar_help_callback, xg_make_tool_item):
  +     Remove no-longer-needed casts.
  +     (xg_create_scroll_bar, xg_tool_bar_button_cb, xg_tool_bar_callback):
  +     (xg_tool_bar_help_callback, xg_make_tool_item):
  +     Use EMACS_INTPTR to hold an integer
  +     that will be cast to void *; this can avoid a GCC warning
  +     if EMACS_INT is not the same width as void *.
  +     * menu.c (find_and_call_menu_selection): Remove no-longer-needed cast.
  +     * xdisp.c (display_echo_area_1, resize_mini_window_1):
  +     (current_message_1, set_message_1):
  +     Use a local to convert to proper width without a cast.
  +     * xmenu.c (dialog_selection_callback): Likewise.
   
  -     * image.c (gif_load): Fix bug: Handle nonexistent colormap.
  +     * sysdep.c (get_random): Don't assume EMACS_INT is no wider than long.
  +     Also, don't assume VALBITS / RAND_BITS is less than 5,
  +     and don't rely on undefined behavior when shifting a 1 left into
  +     the sign bit.
  +     * lisp.h (get_random): Change signature to match.
  +
  +     * lread.c (hash_string): Use size_t, not int, for hash computation.
  +     Normally we prefer signed values; but hashing is special, because
  +     it's better to use unsigned division on hash table sizes so that
  +     the remainder is nonnegative.  Also, size_t is the natural width
  +     for hashing into memory.  The previous code used 'int', which doesn't
  +     retain enough info to hash well into very large tables.
  +     (oblookup, oblookup_last_bucket_number, Funintern): Likewise.
  +
  +     * dbusbind.c: Don't possibly lose pointer info when converting.
  +     (xd_remove_watch, Fdbus_init_bus, xd_read_queued_messages):
  +     Use XPNTR rather than XHASH, so that the high-order bits of
  +     the pointer aren't lost when converting through void *.
  +
  +     * eval.c (Fautoload): Don't double-shift a pointer.
  +
  +     * fns.c (Frandom): Let EMACS_UINT be wider than unsigned long.
  +
  +2011-05-06  Juanma Barranquero  <lekktu@gmail.com>
  +
  +     * gnutls.c (DEF_GNUTLS_FN):
  +     * image.c (DEF_IMGLIB_FN): Make function pointers static.
  +
  +2011-05-05  Andreas Schwab  <schwab@linux-m68k.org>
  +
  +     * lread.c (lisp_file_lexically_bound_p): Stop scanning at end
  +     marker.  (Bug#8610)
  +
  +2011-05-05 Eli Zaretskii  <eliz@gnu.org>
   
  -2007-09-06  Glenn Morris  <rgm@gnu.org>
  +     * w32heap.c (allocate_heap) [USE_LISP_UNION_TYPE || USE_LSB_TAG]:
  +     New version that can reserve upto 2GB of heap space.
   
  -     * gtkutil.c (menu_grab_callback) <cnt>:
  -     * xselect.c (x_reply_selection_request) <cnt>: Move static
  -     variable to file scope.
  +2011-05-05  Chong Yidong  <cyd@stupidchicken.com>
   
  -2007-09-06  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * nsfns.m (Fns_read_file_name): Doc fix (Bug#8534).
   
  -     * xdisp.c (redisplay_internal): Make sure Elisp code always sees
  -     consistent values of selected_frame and selected_window.
  +2011-05-05  Teodor Zlatanov  <tzz@lifelogs.com>
   
  -2007-09-04  Jason Rumney  <jasonr@gnu.org>
  +     * gnutls.c (fn_gnutls_certificate_set_x509_key_file): Add alias to
  +     `gnutls_certificate_set_x509_key_file'.
   
  -     * w32console.c (initialize_w32_display): Zero unused hooks.
  +2011-05-05  Juanma Barranquero  <lekktu@gmail.com>
   
  -2007-09-04  Dan Nicolaescu  <dann@ics.uci.edu>
  +     * makefile.w32-in ($(BLD)/image.$(O), $(BLD)/process.$(O)):
  +     Update dependencies.
   
  -     * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
  -     (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
  +2011-05-04  Juanma Barranquero  <lekktu@gmail.com>
   
  -2007-09-04  Jason Rumney  <jasonr@gnu.org>
  +     * gnutls.h (emacs_gnutls_write, emacs_gnutls_read):
  +     * gnutls.c (emacs_gnutls_write, emacs_gnutls_read):
  +     Remove unused parameter `fildes'.
  +     * process.c (read_process_output, send_process): Don't pass it.
   
  -     * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
  -     in w32console.c.  Set up input.  Remove XXX comments that have been
  -     confirmed as correct.
  +2011-05-04  Juanma Barranquero  <lekktu@gmail.com>
   
  -     * s/ms-w32.h (MULTI_KBOARD): Define.
  +     Fix previous change: the library cache is defined in w32.c.
  +     * image.c (CACHE_IMAGE_TYPE) [!HAVE_NTGUI]: Define to noop.
  +     (Finit_image_library): Wrap Vlibrary_cache on "#ifdef HAVE_NTGUI".
   
  -     * w32console.c (one_and_only_w32cons): Remove.
  -     (initialize_w32_display): Take terminal argument.
  +2011-05-04  Juanma Barranquero  <lekktu@gmail.com>
   
  -     * term.c (init_tty) [WINDOWSNT]: Pass terminal to
  -     initialize_w32_display.
  -     (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
  +     Implement dynamic loading of GnuTLS on Windows.
   
  -     * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
  +     * gnutls.h (GNUTLS_EMACS_ERROR_NOT_LOADED): New macro.
  +     (emacs_gnutls_write, emacs_gnutls_read): Mark as extern.
  +     (emacs_gnutls_record_check_pending, emacs_gnutls_transport_set_errno):
  +     Declare.
   
  -     * keyboard.c (discard_mouse_events): Discard it.
  -     (make_lispy_event): Translate it to a lisp event.
  -     (lispy_wheel_names): Add wheel-left and right events.
  -     (syms_of_keyboard): Enlarge wheel_syms.
  +     * gnutls.c (Qgnutls_dll): Define.
  +     (DEF_GNUTLS_FN, LOAD_GNUTLS_FN): New macros.
  +     (gnutls_*): Declare function pointers.
  +     (init_gnutls_functions): New function to initialize function pointers.
  +     (emacs_gnutls_handshake, Fgnutls_error_string, Fgnutls_deinit)
  +     (emacs_gnutls_global_init, Fgnutls_bye): Use function pointers.
  +     (emacs_gnutls_record_check_pending, emacs_gnutls_transport_set_errno):
  +     Wrappers for gnutls_record_check_pending and gnutls_transport_set_errno.
  +     (emacs_gnutls_write, emacs_gnutls_read)
  +     (emacs_gnutls_handle_error, Fgnutls_error_fatalp)
  +     (Fgnutls_available_p): New function.
  +     (Fgnutls_boot): Call Fgnutls_available_p.  Use function pointers.
  +     (syms_of_gnutls) <Qgnutls_dll>: Initialize and staticpro it.
  +     (syms_of_gnutls) <Sgnutls_available_p>: defsubr it.
   
  -     * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
  -     <WM_MOUSEHWHEEL>: Pass new system message to lisp.
  +     * image.c: Include w32.h.
  +     (Vimage_type_cache): Delete.
  +     (syms_of_image) <Vimage_type_cache>: Don't initialize and staticpro it.
  +     (CACHE_IMAGE_TYPE, Finit_image_library): Use Vlibrary_cache instead.
  +     (w32_delayed_load): Move to w32.c.
   
  -     * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
  +     * w32.h (VlibraryCache, QCloaded_from, w32_delayed_load): Declare.
   
  -     * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
  -     from WM_MOUSEHWHEEL.
  -     (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
  +     * w32.c (QCloaded_from, Vlibrary_cache): Define.
  +     (w32_delayed_load): Move from image.c.  When loading a library, record
  +     its filename in the :loaded-from property of the library id.
  +     (globals_of_w32) <QCloaded_from, Vlibrary_cache>:
  +     Initialize and staticpro them.
  +     (emacs_gnutls_pull, emacs_gnutls_push): Call emacs_gnutls_* functions.
   
  -     * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
  -     terminal.
  +     * process.c: Include lisp.h before w32.h, not after.
  +     (wait_reading_process_output): Call emacs_gnutls_record_check_pending
  +     instead of gnutls_record_check_pending.
   
  -     * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
  -     keyboard for the terminal.
  +     * callproc.c, emacs.c: Include lisp.h before w32.h, not after.
   
  -2007-09-04  Dan Nicolaescu  <dann@ics.uci.edu>
  +2011-05-04  Teodor Zlatanov  <tzz@lifelogs.com>
   
  -     * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
  -     (Vresume_tty_hook): Rename from Vresume_tty_functions.
  -     (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
  -     and resume-tty-function to resume-tty-hook.
  -     (Fsuspend_tty, Fresume_tty): Use new names.
  +     * gnutls.c (Fgnutls_boot): Support :keylist and :crlfiles options
  +     instead of :keyfiles.  Give GnuTLS the keylist and the CRL lists
  +     as passed in.
   
  -2007-09-02  Jan Djärv  <jan.h.d@swipnet.se>
  +2011-05-03  Jan Djärv  <jan.h.d@swipnet.se>
   
  -     * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
  -     if it starts with "n:".
  +     * xterm.c (x_set_frame_alpha): Do not set property on anything
  +     else than FRAME_X_OUTER_WINDOW (Bug#8608).
   
  -2007-08-31  Jan Djärv  <jan.h.d@swipnet.se>
  +2011-05-02  Juanma Barranquero  <lekktu@gmail.com>
   
  -     * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
  +     * sysdep.c (get_tty_size) [WINDOWSNT]: Implement.  (Bug#8596)
   
  -2007-08-31  Stefan Monnier  <monnier@iro.umontreal.ca>
  +2011-05-02  Juanma Barranquero  <lekktu@gmail.com>
   
  -     * frame.h:
  -     * frame.c (Qterm_environment_variable): Remove.
  -     (syms_of_frame): Don't init and staticpro it.
  +     * gnutls.c (Qgnutls_log_level, Qgnutls_code, Qgnutls_anon)
  +     (Qgnutls_x509pki, Qgnutls_e_interrupted, Qgnutls_e_again)
  +     (Qgnutls_e_invalid_session, Qgnutls_e_not_ready_for_handshake)
  +     (gnutls_global_initialized, Qgnutls_bootprop_priority)
  +     (Qgnutls_bootprop_trustfiles, Qgnutls_bootprop_keyfiles)
  +     (Qgnutls_bootprop_callbacks, Qgnutls_bootprop_loglevel)
  +     (Qgnutls_bootprop_hostname, Qgnutls_bootprop_verify_flags)
  +     (Qgnutls_bootprop_verify_error, Qgnutls_bootprop_verify_hostname_error)
  +     (Qgnutls_bootprop_callbacks_verify): Make static.
   
  -     * callproc.c (getenv_internal): Remove special case for $TERM.
  +2011-05-01  Andreas Schwab  <schwab@linux-m68k.org>
   
  -     * callproc.c (Vinitial_environment): New variable.
  -     (set_initial_environment): Initialize it.
  -     (syms_of_callproc): Declare it.
  -     (child_setup): Don't mess with TERM via Qterm_environment_variable; the
  -     TERM under which a process runs is never related to the TERM in which
  -     Emacs is running.
  +     * callproc.c: Indentation fixup.
   
  -2007-08-29  Dan Nicolaescu  <dann@ics.uci.edu>
  +     * sysdep.c (wait_for_termination_1): Make static.
  +     (wait_for_termination, interruptible_wait_for_termination):
  +     Move after wait_for_termination_1.
   
  -     * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
  -     * s/darwin.h: ... do it here.
  +2011-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
   
  -2007-08-29  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * sysdep.c (interruptible_wait_for_termination): New function
  +     which is like wait_for_termination, but allows keyboard
  +     interruptions.
   
  -     * lisp.h (set_initial_environment): Rename from set_global_environment.
  +     * callproc.c (Fcall_process): Add (:file "file") as an option for
  +     the STDOUT buffer.
  +     (Fcall_process_region): Ditto.
   
  -     * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
  -     removed by mistake on the multi-tty branch.
  +2011-04-30  Eli Zaretskii  <eliz@gnu.org>
   
  -     * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
  -     (Fmodify_frame_parameters): Return a value.
  +     * dosfns.c (Fint86, Fdos_memget, Fdos_memput): Use `ASIZE (FOO)'
  +     rather than `XVECTOR (FOO)->size'.
   
  -     * image.c (png_load): Comment-out var only used in commented-out code.
  +     * process.c: Remove HAVE_INTTYPES_H condition from inclusion of
  +     inttypes.h, as a gnulib replacement is used if it not available in
  +     system headers.
   
  -     * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
  -     before passing it to mark_object.
  +2011-04-21  Eli Zaretskii  <eliz@gnu.org>
   
  -     * xfaces.c (internal_resolve_face_name): Return a value.
  -     (internal_resolve_face_name, resolve_face_name_error): Comment out.
  +     Lift the MOST_POSITIVE_FIXNUM/4 limitation on visited files.
  +     * fileio.c (Finsert_file_contents): Don't limit file size to 1/4
  +     of MOST_POSITIVE_FIXNUM.  (Bug#8528)
   
  -     * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
  -     (x_icon): Comment-out var only used in commented-out code.
  +     * coding.c (coding_alloc_by_realloc): Error out if destination
  +     will grow beyond MOST_POSITIVE_FIXNUM.
  +     (decode_coding_emacs_mule): Abort if there isn't enough place in
  +     charbuf for the composition carryover bytes.  Reserve an extra
  +     space for up to 2 characters produced in a loop.
  +     (decode_coding_iso_2022): Abort if there isn't enough place in
  +     charbuf for the composition carryover bytes.
   
  -2007-08-29  Romain Francoise  <romain@orebokech.com>
  +2011-04-21  Eli Zaretskii  <eliz@gnu.org>
   
  -     * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
  -     QUIT hasn't been provided.
  +     * doprnt.c (doprnt) [!HAVE_LONG_LONG_INT]: Error out instead of
  +     aborting when %lld or %lll format is passed.
  +     [!HAVE_UNSIGNED_LONG_LONG_INT]: Error out instead of aborting when
  +     %llo or %llx format is passed.  (Bug#8545)
   
  -2007-08-29  Dan Nicolaescu  <dann@ics.uci.edu>
  +     * window.c (window_scroll_line_based): Use a marker instead of
  +     simple variables to record original value of point.  (Bug#7952)
   
  -     * callproc.c (child_setup, getenv_internal): Use the
  -     display-environment-variable and term-environment-variable frame params.
  -     (set_initial_environment): Initialise Vprocess_environment.
  +     * doprnt.c (doprnt): Fix the case where a multibyte sequence
  +     produced by %s or %c overflows available buffer space.  (Bug#8545)
   
  -     * config.in: Disable multi-keyboard support on a mac.
  +2011-04-28  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * frame.c (Qterm_environment_variable)
  -     (Qdisplay_environment_variable): New variables.
  -     (syms_of_frame): Intern and staticpro them.
  -     (Fmake_terminal_frame): Disable output method test.
  +     * doprnt.c (doprnt): Omit useless test; int overflow check (Bug#8545).
  +     (SIZE_MAX): Move defn after all includes, as they might #define it.
   
  -     * frame.h: Declare them here.
  +2011-04-28  Juanma Barranquero  <lekktu@gmail.com>
   
  -     * macfns.c (x_set_mouse_color): Get rif from the frame.
  -     (x_set_tool_bar_lines): Don't use updating_frame.
  -     (mac_window): Add 2 new parameters for consistency with other systems.
  -     (Fx_create_frame): Fix doc string.  Rename the parameter.  Set the
  -     frame parameters following what is done in X11 and w32.  Don't use
  -     FRAME_MAC_DISPLAY_INFO.
  -     (Fx_open_connection, start_hourglass): Remove window-system check.
  -     (x_create_tip_frame): Get the keyboard from the terminal.
  +     * w32.c (init_environment): Warn about defaulting HOME to C:\.
   
  -     * macmenu.c: Reorder includes.
  -     (Fx_popup_menu): Use terminal specific mouse_position_hook.
  +2011-04-28  Juanma Barranquero  <lekktu@gmail.com>
   
  -     * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
  -     terminal parameter.
  -     (x_clear_frame): Add a frame parameter.
  -     (note_mouse_movement): Get rif from the frame.
  -     (mac_term_init): Initialize the terminal.
  -     (mac_initialize): Make static and move terminal initialization ...
  -     (mac_create_terminal): ... to this new function.
  +     * keyboard.c (Qdelayed_warnings_hook): Define.
  +     (command_loop_1): Run `delayed-warnings-hook'
  +     if Vdelayed_warnings_list is non-nil.
  +     (syms_of_keyboard) <delayed-warnings-hook>: DEFSYM it.
  +     (syms_of_keyboard) <delayed-warnings-list>: DEFVAR_LISP it.
   
  -     * macterm.h (struct mac_display_info): Add terminal.
  -     (mac_initialize): Delete declaration.
  +2011-04-28  Eli Zaretskii  <eliz@gnu.org>
   
  -     * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
  +     * doprnt.c (doprnt): Don't return value smaller than the buffer
  +     size if the message was truncated.  (Bug#8545).
   
  -     * sysdep.c: Comment out text after #endif.
  +2011-04-28  Juanma Barranquero  <lekktu@gmail.com>
   
  -     * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
  -     is defined.  Better initialize ttys in windows.  Use terminal
  -     specific mouse_position_hook.
  +     * w32fns.c (Fx_change_window_property, Fx_delete_window_property)
  +     (Fx_window_property): #if-0 the whole functions, not just the bodies.
   
  -     * termhooks.h (union display_info): Add mac_display_info.
  +2011-04-27  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * w32fns.c (Fx_create_frame): Use kboard from the terminal.
  -     Set the default minibuffer frame, window_system and the rest of the
  -     frame parameters following what is done in X11.
  +     * doprnt.c (doprnt): Support "ll" length modifier, for long long.
   
  -     * w32term.c (w32_initialize): Make static.
  +2011-04-27  Juanma Barranquero  <lekktu@gmail.com>
   
  -     * xselect.c (x_handle_selection_clear): Only access
  -     terminal->kboard when MULTI_KBOARD is defined.
  +     * makefile.w32-in: Update dependencies.
   
  -     * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
  -     (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
  +2011-04-27  Eli Zaretskii  <eliz@gnu.org>
   
  -2007-08-29  Jason Rumney  <jasonr@gnu.org>
  +     Improve `doprnt' and its usage.  (Bug#8545)
  +     * doprnt.c (doprnt): Make sure `format' is never accessed beyond
  +     `format_end'.  Remove support for %l as a conversion specifier.
  +     Don't use xrealloc.  Improve diagnostics when the %l size modifier
  +     is used.  Update the commentary.
   
  -     * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
  -     (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
  +     * eval.c (verror): Simplify calculation of size_t.
   
  -     * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
  -     (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
  +     * coding.c (Ffind_operation_coding_system): Fix diagnostic error
  +     messages.
   
  -     * keyboard.c (restore_kboard_configuration): Only define when
  -     MULTI_KBOARD defined.
  +2011-04-27  Yoshiaki Kasahara  <kasahara@nc.kyushu-u.ac.jp>  (tiny change)
   
  -     * makefile.w32-in: Update dependancies from Makefile.in.
  -     (OBJ1): Add terminal.$(O)
  +     * buffer.c (init_buffer) [USE_MMAP_FOR_BUFFERS]: Adjust to aliasing
  +     change.
   
  -     * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
  -     Don't define function body.
  -     (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
  +2011-04-27  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * termhooks.h (display_info) [WINDOWSNT]: Add w32.
  +     * nsmenu.m: Replace all uses of XVECTOR with ASIZE and AREF.
  +     This makes this file independent of the recent pseudovector change.
   
  -     * w32.c (request_sigio, unrequest_sigio): Remove.
  +2011-04-26  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * w32console.c (w32con_move_cursor, w32con_clear_to_end)
  -     (w32con_clear_frame, w32con_clear_end_of_line)
  -     (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
  -     (w32con_delete_glyphs, w32con_set_terminal_window)
  -     (scroll_line, w32_sys_ring_bell): Add frame arg.
  -     (w32con_set_terminal_modes, w32con_reset_terminal_modes):
  -     Add terminal arg.
  -     (PICK_FRAME): Remove.
  -     (w32con_write_glyphs): Use frame specific terminal coding.
  -     (one_and_only_w32cons): New global variable.
  -     (initialize_w32_display): Use it for storing hooks.
  -     (create_w32cons_output): New function.
  +     * keyboard.c (handle_user_signal): Fix pointer signedness problem.
   
  -     * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
  -     arg a frame.
  +     * gnutls.c (emacs_gnutls_handle_error): Remove unused local.
  +     (Fgnutls_boot): gnutls_certificate_verify_peers2 wants unsigned *.
  +     Remove unused local.
  +     (emacs_gnutls_write): Don't use uninitialized rtnval if nbyte <= 0.
   
  -     * w32fns.c (x_create_tip_frame): Set terminal and ref count.
  -     Set window_system.
  -     (x_set_tool_bar_lines): Don't use updating_frame.
  -     (Fx_create_frame): Set terminal and ref count.
  -     (Fx_open_connection): Remove window-system check.
  +     * lisp.h: Fix a problem with aliasing and vector headers.  (Bug#8546)
  +     GCC 4.6.0 optimizes based on type-based alias analysis.
  +     For example, if b is of type struct buffer * and v of type struct
  +     Lisp_Vector *, then gcc -O2 was incorrectly assuming that &b->size
  +     != &v->size, and therefore "v->size = 1; b->size = 2; return
  +     v->size;" must therefore return 1.  This assumption is incorrect
  +     for Emacs, since it type-puns struct Lisp_Vector * with many other
  +     types.  To fix this problem, this patch adds a new type struct
  +     vectorlike_header that documents the constraints on layout of vectors
  +     and pseudovectors, and helps optimizing compilers not get fooled
  +     by Emacs's type punning.  It also adds the macros XSETTYPED_PVECTYPE
  +     XSETTYPED_PSEUDOVECTOR, TYPED_PSEUDOVECTORP, for similar reasons.
  +     * lisp.h (XSETTYPED_PVECTYPE): New macro, specifying the name of
  +     the size member.
  +     (XSETPVECTYPE): Rewrite in terms of new macro.
  +     (XSETPVECTYPESIZE): New macro, specifying both type and size.
  +     This is a bit clearer, and further avoids the possibility of
  +     undesirable aliasing.
  +     (XSETTYPED_PSEUDOVECTOR): New macro, specifying the size.
  +     (XSETPSEUDOVECTOR): Rewrite in terms of XSETTYPED_PSEUDOVECTOR.
  +     (XSETSUBR): Rewrite in terms of XSETTYPED_PSEUDOVECTOR and XSIZE,
  +     since Lisp_Subr is a special case (no "next" field).
  +     (ASIZE): Now uses header.size rather than size.
  +     All previous uses of XVECTOR (foo)->size replaced to use this macro,
  +     to avoid the hassle of writing XVECTOR (foo)->header.size.
  +     (struct vectorlike_header): New type.
  +     (TYPED_PSEUDOVECTORP): New macro, also specifying the C type of the
  +     object, to help avoid aliasing.
  +     (PSEUDOVECTORP): Rewrite in terms of TYPED_PSEUDOVECTORP.
  +     (SUBRP): Likewise, since Lisp_Subr is a special case.
  +     * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table):
  +     (struct Lisp_Sub_Char_Table, struct Lisp_Bool_Vector):
  +     (struct Lisp_Hash_Table): Combine first two members into a single
  +     struct vectorlike_header member.  All uses of "size" and "next" members
  +     changed to be "header.size" and "header.next".
  +     * buffer.h (struct buffer): Likewise.
  +     * font.h (struct font_spec, struct font_entity, struct font): Likewise.
  +     * frame.h (struct frame): Likewise.
  +     * process.h (struct Lisp_Process): Likewise.
  +     * termhooks.h (struct terminal): Likewise.
  +     * window.c (struct save_window_data, struct saved_window): Likewise.
  +     * window.h (struct window): Likewise.
  +     * alloc.c (allocate_buffer, Fmake_bool_vector, allocate_pseudovector):
  +     Use XSETPVECTYPESIZE, not XSETPVECTYPE, to avoid aliasing problems.
  +     * buffer.c (init_buffer_once): Likewise.
  +     * lread.c (defsubr): Use XSETTYPED_PVECTYPE, since Lisp_Subr is a
  +     special case.
  +     * process.c (Fformat_network_address): Use local var for size,
  +     for brevity.
   
  -     * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
  +     * bytecode.c (exec_byte_code): Don't use XVECTOR before CHECK_VECTOR.
   
  -     * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
  -     (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
  -     (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
  -     Add frame arg.
  -     (x_delete_terminal, w32_create_terminal): New functions.
  -     (w32_term_init): Create a terminal.
  -     (w32_initialize): Move terminal specific initialization to
  -     w32_create_terminal.
  +     Make the Lisp reader and string-to-float more consistent (Bug#8525)
  +     * data.c (atof): Remove decl; no longer used or needed.
  +     (digit_to_number): Move to lread.c.
  +     (Fstring_to_number): Use new string_to_number function, to be
  +     consistent with how the Lisp reader treats infinities and NaNs.
  +     Do not assume that floating-point numbers represent EMACS_INT
  +     without losing information; this is not true on most 64-bit hosts.
  +     Avoid double-rounding errors, by insisting on integers when
  +     parsing non-base-10 numbers, as the documentation specifies.
  +     * lisp.h (string_to_number): New decl, replacing ...
  +     (isfloat_string): Remove.
  +     * lread.c: Include <inttypes.h>, for uintmax_t and strtoumax.
  +     (read1): Do not accept +. and -. as integers; this
  +     appears to have been a coding error.  Similarly, do not accept
  +     strings like +-1e0 as floating point numbers.  Do not report
  +     overflow for integer overflows unless the base is not 10 which
  +     means we have no simple and reliable way to continue.
  +     Break out the floating-point parsing into a new
  +     function string_to_number, so that Fstring_to_number parses
  +     floating point numbers consistently with the Lisp reader.
  +     (digit_to_number): Move here from data.c.  Make it static inline.
  +     (E_CHAR, EXP_INT): Remove, replacing with ...
  +     (E_EXP): New macro, to solve the "1.0e+" problem mentioned below.
  +     (string_to_number): New function, replacing isfloat_string.
  +     This function checks for valid syntax and produces the resulting
  +     Lisp float number too.  Rework it so that string-to-number
  +     no longer mishandles examples like "1.0e+".  Use strtoumax,
  +     so that overflow for non-base-10 numbers is reported only when
  +     there's no portable and simple way to convert to floating point.
  +
  +     * textprop.c (set_text_properties_1): Rewrite for clarity,
  +     and to avoid GCC warning about integer overflow.
  +
  +     * intervals.h (struct interval): Use EMACS_INT for members
  +     where EMACS_UINT might cause problems.  See
  +     <http://lists.gnu.org/archive/html/emacs-devel/2011-04/msg00514.html>.
  +     (CHECK_TOTAL_LENGTH): Remove cast to EMACS_INT; no longer needed.
  +     * intervals.c (interval_deletion_adjustment): Now returns EMACS_INT.
  +     All uses changed.
  +     (offset_intervals): Tell GCC not to worry about length overflow
  +     when negating a negative length.
  +
  +     * alloc.c (overrun_check_malloc, overrun_check_realloc): Now static.
  +     (overrun_check_free): Likewise.
  +
  +     * alloc.c (SDATA_SIZE) [!GC_CHECK_STRING_BYTES]: Avoid runtime check
  +     in the common case where SDATA_DATA_OFFSET is a multiple of Emacs
  +     word size.
  +
  +     * gnutls.c: Fix problems found by GCC 4.6.0 on Ubuntu 10.10.
  +     (gnutls_make_error): Rename local to avoid shadowing.
  +     (gnutls_emacs_global_deinit): ifdef out; not used.
  +     (Fgnutls_boot): Use const for pointer to readonly storage.
  +     Comment out unused local.  Fix pointer signedness problems.
  +
  +     * lread.c (openp): Don't stuff size_t into an 'int'.
  +     Use <= on length, not < on length + 1, to avoid GCC 4.6.0 warning
  +     about possible signed overflow.
  +
  +     * gtkutil.c: Fix problems found by GCC 4.6.0 on Ubuntu 10.10.
  +     (GDK_KEY_g): Don't define if already defined.
  +     (xg_prepare_tooltip): Avoid pointer signedness problem.
  +     (xg_set_toolkit_scroll_bar_thumb): Redo to avoid two casts.
  +
  +     * process.c (Fnetwork_interface_info): Avoid left-shift undefined
  +     behavior with 1 << 31.  GCC 4.6.0 warns about this on 32-bit hosts.
  +
  +     * xfns.c (Fx_window_property): Simplify a bit,
  +     to make a bit faster and to avoid GCC 4.6.0 warning.
  +     * xselect.c (x_get_window_property, x_handle_dnd_message): Likewise.
  +
  +     * fns.c (internal_equal): Don't assume size_t fits in int.
  +
  +     * alloc.c (compact_small_strings): Tighten assertion a little.
  +
  +     Replace pEd with more-general pI, and fix some printf arg casts.
  +     * lisp.h (pI): New macro, generalizing old pEd macro to other
  +     conversion specifiers.  For example, use "...%"pI"d..." rather
  +     than "...%"pEd"...".
  +     (pEd): Remove.  All uses replaced with similar uses of pI.
  +     * src/m/amdx86-64.h, src/m/ia64.h, src/m/ibms390x.h: Likewise.
  +     * alloc.c (check_pure_size): Don't overflow by converting size to int.
  +     * bidi.c (bidi_dump_cached_states): Use pI to avoid cast.
  +     * data.c (Fnumber_to_string): Use pI instead of if-then-else-abort.
  +     * dbusbind.c (xd_append_arg): Use pI to avoid cast.
  +     (Fdbus_method_return_internal, Fdbus_method_error_internal): Likewise.
  +     * font.c (font_unparse_xlfd): Avoid potential buffer overrun on
  +     64-bit hosts.
  +     (font_unparse_xlfd, font_unparse_fcname): Use pI to avoid casts.
  +     * keyboard.c (record_char, modify_event_symbol): Use pI to avoid casts.
  +     * print.c (safe_debug_print, print_object): Likewise.
  +     (print_object): Don't overflow by converting EMACS_INT or EMACS_UINT
  +     to int.
  +     Use pI instead of if-then-else-abort.  Use %p to avoid casts,
  +     avoiding the 0 flag, which is not portable.
  +     * process.c (Fmake_network_process): Use pI to avoid cast.
  +     * region-cache.c (pp_cache): Likewise.
  +     * xdisp.c (decode_mode_spec): Likewise.
  +     * xrdb.c (x_load_resources) [USE_MOTIF]: Use pI to avoid undefined
  +     behavior on 64-bit hosts with printf arg.
  +     * xselect.c (x_queue_event): Use %p to avoid casts, avoiding 0 flag.
  +     (x_stop_queuing_selection_requests): Likewise.
  +     (x_get_window_property): Don't truncate byte count to an 'int'
  +     when tracing.
  +
  +     * frame.c (frame_name_fnn_p): Get rid of strtol, which isn't right
  +     here, since it parses constructs like leading '-' and spaces,
  +     which are not wanted; and it overflows with large numbers.
  +     Instead, simply match F[0-9]+, which is what is wanted anyway.
  +
  +     * alloc.c: Remove unportable assumptions about struct layout.
  +     (SDATA_SELECTOR, SDATA_DATA_OFFSET): New macros.
  +     (SDATA_OF_STRING, SDATA_SIZE, allocate_string_data):
  +     (allocate_vectorlike, make_pure_vector): Use the new macros,
  +     plus offsetof, to remove unportable assumptions about struct layout.
  +     These assumptions hold on all porting targets that I know of, but
  +     they are not guaranteed, they're easy to remove, and removing them
  +     makes further changes easier.
  +
  +     * alloc.c (BLOCK BYTES): Fix typo by changing "ablock" to "ablocks".
  +     This doesn't fix a bug but makes the code clearer.
  +     (string_overrun_cookie): Now const.  Use initializers that
  +     don't formally overflow signed char, to avoid warnings.
  +     (allocate_string_data) [GC_CHECK_STRING_OVERRUN]: Fix typo that
  +     can cause Emacs to crash when string overrun checking is enabled.
  +     (allocate_buffer): Don't assume sizeof (struct buffer) is a
  +     multiple of sizeof (EMACS_INT); it need not be, if
  +     alignof(EMACS_INT) < sizeof (EMACS_INT).
  +     (check_sblock, check_string_bytes, check_string_free_list): Protoize.
  +
  +2011-04-26  Juanma Barranquero  <lekktu@gmail.com>
  +
  +     * keyboard.c (QCrtl): Rename from Qrtl.  All uses changed.
  +
  +2011-04-26  Teodor Zlatanov  <tzz@lifelogs.com>
  +
  +     * gnutls.c (emacs_gnutls_handshake): Return an error if we're not
  +     supposed to be handshaking.  (Bug#8556)
  +     Reported by Paul Eggert <eggert@cs.ucla.edu>.
  +
  +2011-04-26  Daniel Colascione  <dan.colascione@gmail.com>
  +
  +     * lisp.h (Qdebug): List symbol.
  +     * eval.c (Qdebug): Restore global linkage.
  +     * keyboard.c (debug-on-event): New variable.
  +     (handle_user_signal): Break into debugger when debug-on-event
  +     matches the current signal symbol.
  +
  +2011-04-25  Dan Nicolaescu  <dann@ics.uci.edu>
  +
  +     * alloc.c (check_sblock, check_string_bytes)
  +     (check_string_free_list): Convert to standard C.
  +
  +2011-04-25  Teodor Zlatanov  <tzz@lifelogs.com>
  +
  +     * w32.c (emacs_gnutls_push): Fix typo.
  +
  +2011-04-25  Eli Zaretskii  <eliz@gnu.org>
  +
  +     * gnutls.c (emacs_gnutls_handshake): Avoid compiler warnings about
  +     "cast to pointer from integer of different size".
  +
  +     Improve doprnt and its use in verror.  (Bug#8545)
  +     * doprnt.c (doprnt): Document the set of format control sequences
  +     supported by the function.  Use SAFE_ALLOCA instead of always
  +     using `alloca'.
  +
  +     * eval.c (verror): Don't limit the buffer size at size_max-1, that
  +     is one byte too soon.  Don't use xrealloc; instead xfree and
  +     xmalloc anew.
  +
  +2011-04-24  Teodor Zlatanov  <tzz@lifelogs.com>
  +
  +     * gnutls.h: Add GNUTLS_STAGE_CALLBACKS enum to denote we're in the
  +     callbacks stage.
  +
  +     * gnutls.c: Renamed global_initialized to
  +     gnutls_global_initialized.  Added internals for the
  +     :verify-hostname-error, :verify-error, and :verify-flags
  +     parameters of `gnutls-boot' and documented those parameters in the
  +     docstring.  Start callback support.
  +     (emacs_gnutls_handshake): Add Woe32 support.  Retry handshake
  +     unless a fatal error occurred.  Call gnutls_alert_send_appropriate
  +     on error.  Return error code.
  +     (emacs_gnutls_write): Call emacs_gnutls_handle_error.
  +     (emacs_gnutls_read): Likewise.
  +     (Fgnutls_boot): Return handshake error code.
  +     (emacs_gnutls_handle_error): New function.
  +     (wsaerror_to_errno): Likewise.
  +
  +     * w32.h (emacs_gnutls_pull): Add prototype.
  +     (emacs_gnutls_push): Likewise.
   
  -     * w32term.h (x_output): Remove foreground_pixel and background_pixel.
  -     (w32_clear_rect, w32_clear_area): Use background from frame.
  -     (w32_display_info): Add terminal.
  -     (w32_sys_ring_bell, x_delete_display): Declare here.
  +     * w32.c (emacs_gnutls_pull): New function for GnuTLS on Woe32.
  +     (emacs_gnutls_push): Likewise.
   
  -     * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
  +2011-04-24  Claudio Bley  <claudio.bley@gmail.com>  (tiny change)
   
  -     * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
  +     * process.c (wait_reading_process_output): Check if GnuTLS
  +     buffered some data internally if no FDs are set for TLS
  +     connections.
   
  -2007-08-29  Kalle Olavi Niemitalo  <kon@iki.fi>  (tiny change)
  +     * makefile.w32-in (OBJ2): Add gnutls.$(O).
  +     (LIBS): Link to USER_LIBS.
  +     ($(BLD)/gnutls.$(0)): New target.
   
  -     * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
  -     Fix get_named_tty calls for the controlling tty.
  +2011-04-24  Eli Zaretskii  <eliz@gnu.org>
   
  -2007-08-29  ARISAWA Akihiro  <ari@mbf.ocn.ne.jp>  (tiny change)
  +     * xdisp.c (handle_single_display_spec): Rename the
  +     display_replaced_before_p argument into display_replaced_p, to
  +     make it consistent with the commentary.  Fix typos in the
  +     commentary.
   
  -     * term.c (dissociate_if_controlling_tty) [USG]: Fix parse error.
  +     * textprop.c (syms_of_textprop): Remove dead code.
  +     (copy_text_properties): Delete obsolete commentary about an
  +     interface that was deleted long ago.  Fix typos in the description
  +     of arguments.
   
  -2007-08-29  Yoshiaki Kasahara  <kasahara@nc.kyushu-u.ac.jp>  (tiny change)
  +     * msdos.c (XMenuActivate, XMenuAddSelection): Adjust argument list
  +     to changes in oldXMenu/XMenu.h from 2011-04-16.
  +     <menu_help_message, prev_menu_help_message>: Constify.
  +     (IT_menu_make_room): menu->help_text is now `const char **';
  +     adjust.
   
  -     * term.c (tty_insert_glyphs): Add missing first parameter.
  +     * msdos.h (XMenuActivate, XMenuAddSelection): Adjust prototypes
  +     to changes in oldXMenu/XMenu.h from 2011-04-16.
  +     (struct XMenu): Declare `help_text' `const char **'.
   
  -2007-08-29  Károly Lőrentey  <karoly@lorentey.hu>
  +     * xfaces.c <Qunspecified>: Make extern again.
   
  -     * buffer.c (Fbuffer_list, Fbury_buffer):
  -     Take frame->buried_buffer_list into account.
  +     * syntax.c: Include sys/types.h before including regex.h, as
  +     required by Posix.
   
  -     * cm.c (current_tty): New variable, for cmputc().
  -     (cmputc): Use it.
  -     (cmcheckmagic): Add tty parameter, look up terminal streams there.
  -     (calccost): Add tty parameter.  Use emacs_tputs() instead of tputs().
  -     (cmgoto): Add tty parameter.  Pass it on to calccost().
  -     Use emacs_tputs() instead of tputs().
  +     * doc.c (get_doc_string): Improve the format passed to `error'.
   
  -     * cm.h (emacs_tputs): New macro to set current_tty, and then call
  -     tputs().
  -     (current_tty): New variable, for cmputc().
  -     (cmcheckmagic, cmputc, cmgoto): Add prototypes.
  +     * doprnt.c (doprnt): Improve commentary.
   
  -     * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
  -     (internal_condition_case, internal_condition_case_1)
  -     (internal_condition_case_2): Don't abort when x_catching_errors.
  +     * term.c (init_tty) [MSDOS]: Fix 1st argument to maybe_fatal.
   
  -     * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
  -     (Fy_or_n_p): Likewise.  Use temporarily_switch_to_single_kboard to
  -     prevent crashes caused by bogus longjmps in read_char.
  +     * Makefile.in (TAGS): Depend on $(M_FILE) and $(S_FILE), and scan
  +     them with etags.
   
  -     * keymap.h (Fset_keymap_parent): Add EXFUN.
  +     * makefile.w32-in (globals.h): Add a dummy recipe, to make any
  +     changes in globals.h immediately force recompilation.
  +     (TAGS): Depend on $(CURDIR)/m/intel386.h and
  +     $(CURDIR)/s/ms-w32.h.
  +     (TAGS-gmake): Scan $(CURDIR)/m/intel386.h and $(CURDIR)/s/ms-w32.h.
   
  -     * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
  -     * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
  -     Remove redundant definition.
  +     * character.c (Fchar_direction): Function deleted.
  +     (syms_of_character): Don't defsubr it.
  +     <char-direction-table>: Deleted.
   
  -     * macfns.c (x_set_mouse_color, x_make_gc):
  -     Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
  +2011-04-23  Eli Zaretskii  <eliz@gnu.org>
   
  -     * w32term.c (x_free_frame_resources):
  -     Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
  -     (w32_initialize): Use the accessor macros for terminal characteristics.
  +     Fix doprnt so it could be used again safely in `verror'.  (Bug#8435)
  +     * doprnt.c: Include limits.h.
  +     (SIZE_MAX): New macro.
  +     (doprnt): Return a size_t value.  2nd arg is now size_t.
  +     Many local variables are now size_t instead of int or unsigned.
  +     Improve overflow protection.  Support `l' modifier for integer
  +     conversions.  Support %l conversion.  Don't assume an EMACS_INT
  +     argument for integer conversions and for %c.
   
  -     * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
  -     Use the accessor macros for terminal characteristics.
  -     * msdos.c (internal_terminal_init): Use the accessor macros for
  -     terminal characteristics.
  -     (ScreenVisualBell, internal_terminal_init):
  -     Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
  +     * lisp.h (doprnt): Restore prototype.
   
  -     * termopts.h (no_redraw_on_reenter): Declare.
  +     * makefile.w32-in ($(BLD)/callint.$(O)): Depend on
  +     $(SRC)/character.h.
   
  -     * alloc.c (emacs_blocked_malloc): Disable mallopt call.
  -     (mark_terminals, mark_ttys): Declare.
  -     (Fgarbage_collect): Call them.
  -     (mark_object): Mark buried_buffer_list.
  +     * Makefile.in (base_obj): Add back doprnt.o.
   
  -     * prefix-args.c: Include stdlib.h for exit.
  +     * deps.mk (doprnt.o): Add back prerequisites.
  +     (callint.o): Depend on character.h.
   
  -     * syssignal.h: Add comment.
  +     * eval.c (internal_lisp_condition_case): Include the handler
  +     representation in the error message.
  +     (verror): Call doprnt instead of vsnprintf.  Fix an off-by-one bug
  +     when breaking from the loop.
   
  -     * indent.c: Include stdio.h.
  +     * xdisp.c (vmessage): Call doprnt instead of vsnprintf.
   
  -     * window.h (Vinitial_window_system): Declare.
  -     (Vwindow_system): Delete declaration.
  +     * callint.c (Fcall_interactively): When displaying error message
  +     about invalid control letter, pass the character's codepoint, not
  +     a pointer to its multibyte form.  Improve display of the character
  +     in octal and display also its hex code.
   
  -     * fontset.c (Finternal_char_font): Use FRAME_RIF.
  +     * character.c (char_string): Use %x to display the (unsigned)
  +     codepoint of an invalid character, to avoid displaying a bogus
  +     negative value.
   
  -     * image.c (lookup_image): Don't initialize `c' until the xasserts
  -     have been run.
  +     * font.c (check_otf_features): Pass SDATA of SYMBOL_NAME to
  +     `error', not SYMBOL_NAME itself.
   
  -     * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
  -     FRAME_FOREGROUND_PIXEL.
  +     * coding.c (Fencode_sjis_char, Fencode_big5_char): Use %c for
  +     character arguments to `error'.
   
  -     * print.c (print_preprocess): Don't lose print_depth levels while
  -     iterating.
  +     * charset.c (check_iso_charset_parameter): Fix incorrect argument
  +     to `error' in error message about FINAL_CHAR argument.  Make sure
  +     FINAL_CHAR is a character, and use %c when it is passed as
  +     argument to `error'.
   
  -     * widget.c (update_from_various_frame_slots):
  -     Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
  +2011-04-23  Eli Zaretskii  <eliz@gnu.org>
   
  -     * window.c (set_window_buffer): Don't call clear_mouse_face on tty
  -     frames.
  -     (window_internal_height): Remove bogus make_number call.
  -     (init_window_once): Call make_terminal_frame with two zero parameters.
  +     * s/ms-w32.h (localtime): Redirect to sys_localtime.
   
  -     * fileio.c (Fread_file_name): Update comment.
  +     * w32.c: Include <time.h>.
  +     (sys_localtime): New function.
   
  -     * callint.c (Fcall_interactively):
  -     Use temporarily_switch_to_single_kboard instead of single_kboard_state.
  -     Make sure it is correctly unwound.
  -
  -     * xsmfns.c (x_session_close): New function.
  -
  -     * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
  -     Delete declarations.
  -
  -     * xterm.h: Remove declaration for x_fully_uncatch_errors.
  -     (x_output): Remove background_pixel and foreground_pixel fields.
  -     (x_display_info): Add new field TERMINAL.  Remove KBOARD field.
  -     (x_delete_device, x_session_close): Declare.
  -
  -     * lread.c: Include setjmp.h.  Update declaration of `read_char'.
  -     (read_filtered_event): Call `read_char' with a local
  -     `wrong_kboard_jmpbuf'.
  -
  -     * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
  -     Don't call single_kboard_state.  Use FRAME_RIF.
  -
  -     * process.c (Fmake_network_process): Don't unrequest_sigio on modern
  -     systems.
  -
  -     * lisp.h (set_process_environment): Rename to `set_global_environment'.
  -     (Fframe_with_environment, Fset_input_meta_mode)
  -     (Fset_quit_char): EXFUN.
  -     (x_create_device, tty_output, terminal, tty_display_info): Declare.
  -     (init_sys_modes, reset_sys_modes): Update prototypes.
  -     (init_all_sys_modes, reset_all_sys_modes): New prototypes.
  -
  -     * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
  -     Vlocal_key_translation_map, and Vkeyboard_translate_table.
  -     (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
  -     Delete declarations.
  -     (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
  -     (temporarily_switch_to_single_kboard, tty_read_avail_input):
  -     New declarations.
  -
  -     * emacs.c (main): Don't call init_sys_modes(), the new term_init()
  -     already does that during init_display().  Call syms_of_keymap
  -     before syms_of_keyboard.  Call `syms_of_terminal'.
  -     Call set_initial_environment, not set_process_environment.
  -     (shut_down_emacs): Call reset_all_sys_modes() instead of
  -     reset_sys_modes().
  -
  -     * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
  -     (internal_resolve_face_name, resolve_face_name_error): New functions.
  -     (resolve_face_name): Protect against loops and errors thrown by Fget.
  -     (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
  -     (Ftty_supports_face_attributes_p): Update tty_capable_p call.
  -
  -     * scroll.c: Replace CURTTY() with local variables throughout the
  -     file (where applicable).
  -     (calculate_scrolling, calculate_direct_scrolling)
  -     (scrolling_1, scroll_cost): Use the accessor macros for terminal
  -     characteristics.
  -
  -     * keymap.c (Vfunction_key_map): Remove.
  -     (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
  -     (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
  -     (Vkey_translation_map): Remove.
  -     (syms_of_keymap): Remove DEFVAR for key-translation-map.
  -     (Fdescribe_buffer_bindings)
  -     (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
  -     Update for terminal-local key-translation-map.
  -
  -     * Makefile.in (callproc.o): Update dependencies.
  -     (lisp, shortlisp): Add termdev.elc.
  -     (obj): Add terminal.o.
  -     (terminal.o): Add dependencies.
  -     [HAVE_CARBON]: Make terminal.o depend on macgui.h.
  -     (data.o, fns.o): Add termhooks.h dependency.
  -     (SOME_MACHINE_LISP): Add dnd.elc.
  -     (minibuf.o): Fix typo.
  -     Update dependencies.
  +2011-04-23  Chong Yidong  <cyd@stupidchicken.com>
   
  -     * data.c (do_symval_forwarding, store_symval_forwarding)
  -     (find_symbol_value): Use the selected frame's keyboard, not
  -     current_kboard.
  -
  -     * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
  -     Vwindow_system.
  -
  -     * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
  -     Fmenu_bar_open.
  -     (syms_of_xmenu): Update defsubr.
  -     (mouse_position_for_popup, Fx_popup_menu)
  -     (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
  -     (set_frame_menubar, free_frame_menubar)
  -     (create_and_show_popup_menu, xmenu_show)
  -     (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
  -     an X frame.
  -
  -     * xselect.c (x_own_selection): Abort if not an X frame.
  -     (some_frame_on_display): Check if it is an X frame.
  -     (x_handle_selection_clear): Deal with MULTI_KBOARD.
  -
  -     * coding.c: Include frame.h and termhooks.h.
  -     (terminal_coding, keyboard_coding): Delete.
  -     (Fset_terminal_coding_system_internal)
  -     (Fset_keyboard_coding_system_internal)
  -     (Fkeyboard_coding_system)
  -     (Fterminal_coding_system): Add a terminal parameter.
  -     Get terminal_coding from the terminal.
  -     (init_coding_once): Don't call setup_coding_system here.
  -
  -     * dispextern.h (set_scroll_region, turn_off_insert)
  -     (turn_off_highlight, background_highlight, clear_end_of_line_raw)
  -     (tty_clear_end_of_line, tty_setup_colors)
  -     (delete_tty, updating_frame)
  -     (produce_special_glyphs, produce_glyphs, write_glyphs)
  -     (insert_glyphs): Remove.
  -     (raw_cursor_to, clear_to_end, tty_turn_off_insert)
  -     (tty_turn_off_highlight, get_tty_size): Add declaration.
  -     (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
  -
  -     * frame.h (enum output_method): Add output_initial.
  -     (struct x_output): Delete.
  -     (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
  -     Access foreground_pixel and background_pixel directly from the frame.
  -     (tty_display): Delete.
  -     (struct frame): Add buried_buffer_list, foreground_pixel,
  -     background_pixel and terminal.  Delete kboard.
  -     (union output_data): Add tty.
  -     (FRAME_KBOARD): Get the kboard from the terminal.
  -     (FRAME_INITIAL_P): New macro.
  -     (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
  -     (Qterm_environment_variable, Qdisplay_environment_variable)
  -     (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
  -     New declarations.
  -
  -     * termchar.h (tty_output, tty_display_info): New structures.
  -     (tty_list): Declare.
  -     (FRAME_TTY, CURTTY): New macros.
  -     (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
  -     (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
  -     (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
  -     (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
  -
  -     * callproc.c: Include frame.h and termhooks.h, for terminal
  -     parameters.
  -     (add_env): New function.
  -     (child_setup): Use it.
  -     (child_setup, getenv_internal): Handle the new Vprocess_environment.
  -     (getenv_internal): Fix get_terminal_param call.
  -     (Fgetenv_internal, egetenv): Update doc.
  -     (syms_of_callproc): Initialize Vprocess_environment to nil.
  -     Register and initialize them.  Remove obsolete defvars.  Update doc
  -     strings.
  -     (child_setup): Handle Vlocal_environment_variables.
  -     (getenv_internal): Add terminal parameter.
  -     Handle Vlocal_environment_variables.
  -     (Fgetenv_internal): Add terminal parameter.
  -     (child_setup, getenv_internal, Fgetenv_internal): Store the local
  -     environment in a frame (not terminal) parameter.  Update doc strings.
  -     (set_initial_environment): Rename from set_global_environment.
  -     Store Emacs environment in initial frame parameter.
  -
  -     * xdisp.c (redisplay_internal): Update references to
  -     `previous_terminal_frame'.
  -     (display_mode_line, Fformat_mode_line): Replace calls to
  -     `push_frame_kboard' with `push_kboard'.
  -     (get_glyph_string_clip_rects): Add extra parentheses and
  -     braces to prevent compiler warnings.
  -     (calc_pixel_width_or_height): Add xassert to check that the
  -     frame is alive.  Don't call `lookup_image' on a termcap frame.
  -     (message2_nolog, message3_nolog, redisplay_internal)
  -     (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
  -     (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
  -     (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
  -     (Fx_display_pixel_width, Fx_display_pixel_height)
  -     (Fx_display_planes, Fx_display_color_cells)
  -     (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
  -     (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
  -     (Fx_display_backing_store, Fx_display_visual_class)
  -     (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
  -     Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
  -
  -     * xfns.c (x_set_foreground_color x_set_background_color)
  -     (x_set_mouse_color, x_set_cursor_color, x_make_gc):
  -     Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
  -     (Fx_create_frame, x_create_tip_frame, build_string, x_window)
  -     (Fx_create_frame, x_create_tip_frame): Don't create frames on a
  -     terminal that is being deleted.
  -     (Fx_create_frame): Use `store_frame_param' to set `window-system'
  -     frame parameter, and make sure it overrides any user-supplied setting.
  -     (Fx_close_connection, Fx_synchronize): Unify argument names with
  -     the rest of the DEFUNs.
  -
  -     * dispnew.c (Fsend_string_to_terminal): Update call to
  -     `get_tty_terminal'.
  -     (Fredraw_frame, Fsend_string_to_terminal)
  -     (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
  -     FRAME_TERMCAP_P and FRAME_TTY.
  -     (window_change_signal): Don't believe width/height values that are
  -     impossibly small.
  -     (Vinitial_window_system): Rename from Vwindow_system.
  -     (termscript, Wcm, rif): Delete.
  -
  -     * termhooks.h (struct terminal): New struct containing the
  -     previously global text display hooks and new members NAME,
  -     DELETED and PARAM_ALIST.
  -     (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
  -     (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
  -     (FRAME_RIF): New macros.
  -     (get_terminal_param, get_device): New declarations.
  -     (termscript): Delete declaration.
  -
  -     * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
  -     (XTflash, x_free_frame_resources, x_scroll_bar_create)
  -     (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
  -     FRAME_FOREGROUND_PIXEL.
  -     (x_fully_uncatch_errors): Disable definition.
  -     (x_scroll_bar_expose): Fix reference to foreground pixel.
  -     (XTread_socket): Disable loop on all X displays.
  -     (x_delete_terminal): Don't set terminal->deleted and let
  -     delete_terminal delete the frames on the terminal.
  -     (x_delete_display): Doc update to reflect changes in
  -     delete_terminal.
  -     (x_display_info) <terminal>: Move member earlier in the struct.
  -     (deleting_tty): Remove old variable.
  -     (Fsuspend_tty): Call clear_tty_hooks.
  -     (Fresume_tty, init_tty): Call set_tty_hooks.
  -     (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
  -     errors on X frames.
  -     (x_catch_errors_unwind): Abort if x_error_message is NULL.
  -     (handle_one_xevent): Initialize `f' to NULL.
  -     (x_delete_terminal, x_create_terminal): New functions.
  -     (XTset_terminal_modes, XTreset_terminal_modes)
  -     (XTread_socket, x_connection_closed, x_term_init)
  -     (x_term_init, x_delete_display): Add terminal parameter.
  -     (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
  -     X connections.
  -
  -     * frame.c: Include termchar.h.
  -     (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
  -     (Qwindow_system, Qenvironment, Qterm_environment_variable)
  -     (Qdisplay_environment_variable): New vars.
  -     (Fframep): Deal with output_initial.
  -     (Fframe-live-p): Doc fix.
  -     (Fwindow-system): New function.
  -     (x_set_screen_gamma, store_frame_param): Fix compilation errors.
  -     (make_terminal_frame): Don't create frames on a terminal that is
  -     being deleted.  Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
  -     (store_frame_param): Check for found_for_frame before calling XFRAME.
  -     (Fmake_terminal_frame): Handle NULL tty names correctly.
  -     (syms_of_frame): Enhance doc string of `default-frame-alist'.
  -     (Fdelete_frame): Remove unused variable `count'.  Don't allow other
  -     frames to refer to a deleted frame in their 'environment parameter.
  -     (Fframe_with_environment): New function.
  -     (syms_of_frame): Defsubr it.  Initialize and staticpro Qenvironment.
  -     (get_future_frame_param): New function.
  -     (Fmake_terminal_frame): Use it.
  -     (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
  -
  -     * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
  -     * sysdep.c (reset_sys_modes): Update for renames.
  -
  -     * keyboard.c (tty_read_avail_input): New function.
  -     (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
  -     (syms_of_keyboard): Defsubr them.
  -     (Fset_input_meta_mode, Fset_quit_char): New functions.
  -     (Fset_input_mode): Split to above functions.
  -     (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
  -     parameter.  Use it in call to `read_char'.
  -     (read_char): Declare.  Update call to `read_char_minibuf_menu_prompt'.
  -     Set wrong_kboard_jmpbuf correctly in recursive calls.
  -     Use current_kboard to access Vkeyboard_translate_table.
  -     Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
  -     Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
  -     Update longjmp invocations.  Remember the original current_kboard,
  -     and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
  -     changes it.  Comment out unnecessary calls to
  -     `record_single_kboard_state' and `any_kboard_state'.
  -     Update recursive calls.
  -     (wrong_kboard_jmpbuf): Remove global variable.
  -     (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
  -     Handle deleted interrupted_kboards correctly; that is a legal
  -     case.  Add `wrong_kboard_jmpbuf' local variable.  Update setjmp
  -     and read_char calls.  Abort if interrupted_kboard died in read_char.
  -     (any_kboard_state, single_kboard_state)
  -     (push_frame_kboard): Remove function.
  -     (pop_kboard): Switch out of single_kboard mode if the kboard has
  -     been deleted.  Remove unused variable.  Help debugging by not
  -     changing current_kboard unnecessarily.  Set current_kboard to the
  -     kboard of the selected frame when the stored kboard object has
  -     been deleted before pop_kboard.
  -     (temporarily_switch_to_single_kboard): Change first parameter to a
  -     frame pointer.  Throw an error when caller wants to change kboards
  -     while in single_kboard mode.  Don't push_kboard if we weren't in
  -     single kboard state.  Don't pop_kboard if we popped into any
  -     kboard state.
  -     (restore_kboard_configuration): Abort if pop_kboard changed the
  -     kboard in single_kboard mode.  Call pop_kboard only after setting
  -     up single_kboard mode.
  -     (Frecursive_edit): Switch to single_kboard mode only in nested
  -     command loops.
  -     (cmd_error, command_loop, command_loop_1, timer_check):
  -     Comment out unnecessary call to `any_kboard_state' and
  -     `record_single_kboard_state'.
  -     (delete_kboard): Exit single_kboard mode if we have just deleted
  -     that kboard.  Use FRAME_KBOARD.
  -     (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
  -     `fatal_error_signal'.
  -     (record_single_kboard_state): Don't push_kboard if we weren't in
  -     single kboard state.  Don't pop_kboard if we popped into any
  -     kboard state.
  -     (push_frame_kboard): Rename to push_kboard.
  -     (kbd_buffer_get_event): Use FRAME_TERMINAL.
  -     (read_avail_input): Read input from all terminals.
  -     (mark_kboards): Also mark Vkeyboard_translate_table.
  -     (kbd_buffer_store_event_hold): Simplify condition.
  -     (read_key_sequence): Reinitialize fkey and keytran at each replay.
  -     (Vkeyboard_translate_table): Move to struct kboard.
  -     (init_kboard): Initialize Vkeyboard_translate_table.
  -     (syms_of_keyboard): Use DEFVAR_KBOARD to define
  -     Vkeyboard_translate_table.  Update doc strings.  Update docs of
  -     local-function-key-map and function-key-map.
  -
  -     * terminal.c: New file.
  -
  -     * term.c: Include errno.h.
  -     (Vring_bell_function, device_list, initial_device)
  -     (next_device_id, ring_bell, update_begin, update_end)
  -     (set_terminal_window, cursor_to, raw_cursor_to)
  -     (clear_to_end, clear_frame, clear_end_of_line)
  -     (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
  -     (Fdisplay_name, create_device, delete_device): Move to terminal.c.
  -     (syms_of_term): Move their initialization to terminal.c.
  -     (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
  -     (Ftty_display_color_cells)
  -     (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
  -     (clear_tty_hooks, set_tty_hooks)
  -     (init_tty, maybe_fatal): New functions.
  -     (Ftty_type): Return nil if terminal is not on a tty instead of
  -     throwing an error.  Doc update.
  -     (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
  -     Doc update.  Initialize new subrs and variables.
  -     (delete_tty): Use terminal->deleted.
  -     (tty_set_terminal_modes): Rename from set_terminal_modes.
  -     (tty_reset_terminal_modes): Rename from reset_terminal_modes.
  -     (set_scroll_region): Rename to `tty_set_scroll_region'.
  -     (turn_on_insert): Rename to `tty_turn_on_insert'.
  -     (turn_off_insert): Rename to `tty_turn_off_insert'.
  -     (turn_off_highlight): Rename to `tty_turn_off_highlight'.
  -     (turn_on_highlight): Rename to `tty_turn_on_highlight'.
  -     (toggle_highligh): Rename to `tty_toggle_highlight'.
  -     (background_highlight): Rename to `tty_background_highlight'.
  -     (highlight_if_desired): Rename to `tty_highlight_if_desired'.
  -     (tty_ring_bell, tty_update_end, tty_set_terminal_window)
  -     (tty_set_scroll_region, tty_background_highlight)
  -     (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
  -     (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
  -     (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
  -     (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
  -     Add static modifier.
  -     (tty_reset_terminal_modes, tty_set_terminal_window)
  -     (tty_set_scroll_region, tty_background_highlight)
  -     (tty_highlight_if_desired, tty_cursor_to)
  -     (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
  -     (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
  -     (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
  -     renames.
  -
  -2007-08-28  Jan Djärv  <jan.h.d@swipnet.se>
  -
  -     * keyboard.c: Qrtl is new.
  -     (parse_tool_bar_item): Handle :rtl keyword.
  -     (syms_of_keyboard): Intern :rtl keyword.
  -
  -     * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
  -
  -     * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
  -     so no Lisp code is executed.
  -     (file_for_image, find_rtl_image): New functions.
  -     (xg_get_image_for_pixmap): Use file_for_image.
  -     (update_frame_tool_bar): If direction is RTL, use RTL image if
  -     defined.  Use Gtk stock images if defined.
  -
  -2007-08-27  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
  -     for nonexistent or zero-width glyph in composition glyph.
  -
  -2007-08-25  Stefan Monnier  <monnier@iro.umontreal.ca>
  -
  -     * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
  -
  -     * xdisp.c (Finvisible_p): New function.
  -     (syms_of_xdisp): defsubr it.
  -
  -2007-08-24  Juanma Barranquero  <lekktu@gmail.com>
  -
  -     * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
  -     Doc fixes.
  -
  -2007-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
  -
  -2007-08-24  Martin Rudalics  <rudalics@gmx.at>
  -
  -     * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
  -     whether decoding has modified buffer contents.
  +     * xdisp.c (init_xdisp): Initialize echo_area_window (Bug#6451).
   
  -2007-08-24  Jason Rumney  <jasonr@gnu.org>
  +     * buffer.c (syms_of_buffer): Doc fix (Bug#6902).
   
  -     * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
  -     (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
  -     (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
  -     (init_svg_functions) [HAVE_NTGUI]: New function.
  -     (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
  -     (svg_load_image): Use them.
  -     (svg_load_image) [HAVE_NTGUI]: Implement background.
  +2011-04-23  Samuel Thibault  <sthibault@debian.org>  (tiny change)
   
  -2007-08-23  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  +     * sysdep.c (wait_for_termination): On GNU Hurd, kill returns -1 on
  +     zombies (Bug#8467).
   
  -     * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
  -     (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
  -     (LIBX): Remove @RSVG_LIBS@.
  -     (LIBES): Add $(RSVG_LIBS).
  +2011-04-19  Eli Zaretskii  <eliz@gnu.org>
   
  -     * image.c (svg_load_image): Blend with specified background if exists.
  -     Use IMAGE_BACKGROUND.  Add Mac OS Support.
  +     * syntax.h (SETUP_SYNTAX_TABLE_FOR_OBJECT): Fix setting of
  +     gl_state.e_property when gl_state.object is Qt.
   
  -     * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
  -     (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
  -     Remove macros.
  -     [MAC_OSX] (socket_callback): Do nothing.
  -     [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
  -     ReceiveNextEvent.
  -     [MAC_OSX] (sys_select): Likewise.  Don't set context as argument to
  -     socket_callback.
  -     (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
  +     * insdel.c (make_gap_larger): Remove limitation of buffer size
  +     to <= INT_MAX.
   
  -2007-08-22  Glenn Morris  <rgm@gnu.org>
  +2011-04-18  Chong Yidong  <cyd@stupidchicken.com>
   
  -     * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
  +     * xdisp.c (lookup_glyphless_char_display)
  +     (produce_glyphless_glyph): Handle cons cell entry in
  +     glyphless-char-display.
  +     (Vglyphless_char_display): Document it.
   
  -2007-08-22  Paul Pogonyshev  <pogonyshev@gmx.net>
  +     * term.c (produce_glyphless_glyph): Handle cons cell entry in
  +     glyphless-char-display.
   
  -     * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
  +2011-04-17  Chong Yidong  <cyd@stupidchicken.com>
   
  -     * image.c: Add support for SVG images.  Some additional comments
  -     by Joakim Verona <joakim@verona.se>.  When HAVE_RSVG is defined:
  -     (svg_image_p): New function to test for SVG image.
  -     (svg_load): New function to load SVG image.
  -     (svg_load_image): New function, helper for svg_load.
  -     (Qsvg): New Lisp_object.
  -     (svg_keyword_index): New enum.
  -     (svg_format): New static `image_keyword' struct.
  -     (svg_type): New static `image_type' struct.
  -     (librsvg/rsvg.h): Include it.
  +     * xdisp.c (get_next_display_element): Remove unnecessary ifdefs.
   
  -2007-08-23  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * termhooks.h (FRAME_WINDOW_P): Remove duplicated definitions.
   
  -     * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
  +     * dispextern.h (FACE_SUITABLE_FOR_ASCII_CHAR_P): Add missing
  +     definition for no-X builds.
   
  -2007-08-22  Stefan Monnier  <monnier@iro.umontreal.ca>
  +2011-04-16  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * lread.c (Qold_style_backquotes): New var.
  -     (syms_of_lread): Init and staticpro it.
  -     (load_warn_old_style_backquotes): New fun.
  -     (Fload): Use them to warn about old style backquotes.
  -     (end_of_file_error, Fload): Remove unused vars.
  +     Static checks with GCC 4.6.0 and non-default toolkits.
   
  -     * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
  +     * s/sol2-6.h, s/unixware.h (PTY_TTY_NAME_SPRINTF): Protoize decl.
   
  -     * lread.c (Vold_style_backquotes): New var.
  -     (syms_of_lread): Init and export it to Elisp.
  -     (read1): Set it when we find an old-style (back)quote.
  +     * process.c (keyboard_bit_set): Define only if SIGIO.
  +     (send_process_trap): Mark it with NO_RETURN if it doesn't return.
  +     (send_process): Repair possible setjmp clobbering.
   
  -2007-08-22  Jason Rumney  <jasonr@gnu.org>
  +     * s/usg5-4-common.h (SETUP_SLAVE_PTY): Don't pass extra arg to 'fatal'.
   
  -     * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
  +     * eval.c: Include <stdio.h>, for vsnprintf on non-GNU/Linux hosts.
   
  -2007-08-22  Katsumi Yamaoka  <yamaoka@jpl.org>
  +     * data.c (arith_error): Mark with NO_RETURN if it doesn't return.
   
  -     * puresize.h (BASE_PURESIZE): Increase to 1140000.
  +     * alloc.c (bytes_used_when_full, SPARE_MEMORY, BYTES_USED):
  +     Define only if needed.
   
  -2007-08-19  Richard Stallman  <rms@gnu.org>
  +     * sysdep.c (_FILE_OFFSET_BITS): Make this hack even uglier
  +     by pacifying GCC about it.  Maybe it's time to retire it?
  +     * xfaces.c (USG, __TIMEVAL__): Likewise.
   
  -     * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
  +     * dispextern.h (struct redisplay_interface): Rename param
  +     to avoid shadowing.
  +     * termhooks.h (struct terminal): Likewise.
  +     * xterm.c (xembed_send_message): Likewise.
   
  -2007-08-19  Andreas Schwab  <schwab@suse.de>
  +     * insdel.c (make_gap_smaller): Define only if
  +     USE_MMAP_FOR_BUFFERS || REL_ALLOC || DOUG_LEA_MALLOC.
   
  -     * alloc.c (pure): Round PURESIZE up.
  +     * keyboard.c (read_char): Make a var volatile so longjmp won't clobber
  +     it.
   
  -2007-08-17  Jan Djärv  <jan.h.d@swipnet.se>
  +     * emacs.c (MAX_HEAP_BSS_DIFF, my_edata): Move to where they're used,
  +     so that we aren't warned about unused symbols.
   
  -     * xterm.c (handle_one_xevent): Remove check that mouse click is in
  -     active frame.
  +     * xfns.c (Fx_file_dialog): Rename local to avoid shadowing.
   
  -2007-08-16  Richard Stallman  <rms@gnu.org>
  +     * xdisp.c (x_produce_glyphs): Mark var as initialized (Bug#8512).
   
  -     * eval.c (Fcommandp): Add parens to clarify.
  +     * xfns.c (x_real_positions): Mark locals as initialized.
   
  -     * minibuf.c (Fall_completions): Use enum for type of table.
  +     * xmenu.c (xmenu_show): Don't use uninitialized vars.
   
  -     * emacs.c (USAGE2): Improve text.
  +     * xterm.c: Fix problems found by static analysis with other toolkits.
  +     (toolkit_scroll_bar_interaction): Define and use only if USE_X_TOOLKIT.
  +     (x_dispatch_event): Declare static if USE_GTK, and
  +     define if USE_GTK || USE_X_TOOLKIT.
  +     (SET_SAVED_BUTTON_EVENT): Define only if USE_X_TOOLKIT || USE_GTK.
  +     * xterm.h (x_dispatch_event): Extern only if USE_X_TOOLKIT.
  +     * xterm.c, xterm.h (x_mouse_leave): Bring this function back, but only
  +     if defined HAVE_MENUS && !defined USE_X_TOOLKIT && !defined USE_GTK.
   
  -2007-08-15  Philippe Waroquiers  <philippe.waroquiers@eurocontrol.int>
  +     * xmenu.c (menu_help_callback): Pointer type fixes.
  +     Use const pointers when pointing at readonly data.  Avoid pointer
  +     signedness clashes.
  +     (FALSE): Remove unused macro.
  +     (update_frame_menubar): Remove unused decl.
   
  -     * term.c (tty_default_color_capabilities): Declare static
  -     variables in file scope, to avoid HPUX compiler problem.
  +     * xfns.c (Fx_hide_tip): Move locals to avoid shadowing.
   
  -2007-08-13  Jan Djärv  <jan.h.d@swipnet.se>
  +     * menu.c (push_submenu_start, push_submenu_end): Do not define unless
  +     USE_X_TOOLKIT || USE_GTK || HAVE_NS || defined HAVE_NTGUI.
  +     (single_menu_item): Rename local to avoid shadowing.
   
  -     * gtkutil.c (update_frame_tool_bar): Use -1 as index
  -     to gtk_toolbar_insert.
  +     * keyboard.c (make_lispy_event): Remove unused local var.
   
  -2007-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * frame.c, frame.h (x_get_resource_string): Bring this back, but
  +     only if HAVE_X_WINDOWS && !USE_X_TOOLKIT.
   
  -     * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
  +     * bitmaps: Change bitmaps from unsigned char back to the X11
  +     compatible char.  Avoid the old compiler warnings about
  +     out-of-range initializers by using, for example, '\xab' rather
  +     than 0xab.
   
  -     * insdel.c (reset_var_on_error): New fun.
  -     (signal_before_change, signal_after_change):
  -     Use it to reset (after|before)-change-functions to nil in case of error.
  -     Bind inhibit-modification-hooks to t.
  -     Don't bind (after|before)-change-functions to nil while they run.
  +     * xgselect.c (xgselect_initialize): Check vs interface
  +     even if ! (defined (USE_GTK) || defined (HAVE_GCONF)).
   
  -2007-08-11  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  +     * xmenu.c (xmenu_show): Rename parm to avoid shadowing.
   
  -     * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
  -     filling pixmap with stippled background.
  +     * xterm.c (x_create_toolkit_scroll_bar): Use const * for pointers
  +     to read-only memory.
   
  -2007-08-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  +     * fns.c (vector): Remove; this old hack is no longer needed.
   
  -     * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
  -     Don't use invisible frame as parent window for repositioning.
  +     * xsmfns.c (create_client_leader_window): Rename shadowing arg.
  +     Remove unused var.
  +     (gdk_x11_set_sm_client_id) [!USE_GTK]: Don't define.
   
  -2007-08-10  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * xrdb.c (x_load_resources): Omit unused local.
   
  -     * print.c (new_backquote_output): Rename from old_backquote_output.
  -     (print): Inverse its logic (according to its name) so as to match the
  -     behavior of new_backquote_flag in lread.c.
  +     * xfns.c (free_frame_menubar, atof): Remove duplicate decls.
  +     (x_window): Rename locals to avoid shadowing.
  +     (USG): Use the kludged USG macro, to pacify gcc.
   
  -2007-08-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  +     * xterm.c (x_alloc_nearest_color_for_widget): Remove; unused.
  +     (x_term_init): Remove local to avoid shadowing.
   
  -     * gmalloc.c (posix_memalign): New function.
  +     * xfns.c, xterm.c (_XEditResCheckMessages): Protoize decl.
   
  -     * macterm.c (frame_highlight, frame_unhighlight): Don't call
  -     ActivateControl/DeactivateControl here.
  -     [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
  -     frame-notice-user-settings is non-nil.
  -     [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
  -     for kEventParamFMFontStyle.
  -     [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
  -     mac_pass_command_to_system and mac_pass_control_to_system here.
  -     (XTread_socket): Call ActivateControl/DeactivateControl here.
  -     (XTread_socket) [TARGET_API_MAC_CARBON]:
  -     Check mac_pass_command_to_system and mac_pass_control_to_system here.
  -     (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
  -     for window repositioning.
  +     * xdisp.c, dispextern.h (set_vertical_scroll_bar): Now extern if
  +     USE_TOOLKIT_SCROLL_BARS && !USE_GTK, as xterm.c needs it then.
   
  -2007-08-08  Glenn Morris  <rgm@gnu.org>
  +2011-04-16  Eli Zaretskii  <eliz@gnu.org>
   
  -     * Replace `iff' in doc-strings and comments.
  +     * gnutls.c (Fgnutls_boot): Don't pass Lisp_Object to `error'.
   
  -2007-08-07  Chong Yidong  <cyd@stupidchicken.com>
  +     Fix regex.c, syntax.c and friends for buffers > 2GB.
  +     * syntax.h (struct gl_state_s): Declare character position members
  +     EMACS_INT.
   
  -     * xdisp.c (move_it_by_lines): Remove incorrect optimization.
  +     * syntax.c (update_syntax_table): Declare 2nd argument EMACS_INT.
   
  -2007-08-07  Martin Rudalics  <rudalics@gmx.at>
  +     * textprop.c (verify_interval_modification, interval_of):
  +     Declare arguments EMACS_INT.
   
  -     * fileio.c (Finsert_file_contents): Run format-decode and
  -     after_insert_file_functions on entire buffer when REPLACE is
  -     non-nil and inhibit modification_hooks and point_motion_hooks.
  -     For consistency, run after_insert_file_functions iff something
  -     got inserted.  Move signal_after_change and update_compositions
  -     after code running after_insert_file_functions.  Make sure that
  -     undo_list doesn't record intermediate steps of the decoding process.
  +     * intervals.c (adjust_intervals_for_insertion): Declare arguments
  +     EMACS_INT.
   
  -2007-08-07  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  +     * intervals.h (CHECK_TOTAL_LENGTH): Cast to EMACS_INT, not `int'.
   
  -     * emacs.c (main)
  -     [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
  -     Call malloc_enable_thread on interactive startup.
  +     * indent.c (Fvertical_motion): Local variable it_start is now
  +     EMACS_INT.
   
  -     * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
  -     (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
  -     [USE_PTHREAD]: Conditionalize with it.
  -     (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
  -     (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
  -     New functions.
  +     * regex.c (re_match, re_match_2, re_match_2_internal)
  +     (bcmp_translate, regcomp, regexec, print_double_string)
  +     (group_in_compile_stack, re_search, re_search_2, regex_compile)
  +     (re_compile_pattern, re_exec): Declare arguments and local
  +     variables `size_t' and `ssize_t' and return values `regoff_t', as
  +     appropriate.
  +     (POP_FAILURE_REG_OR_COUNT) <pfreg>: Declare `long'.
  +     (CHECK_INFINITE_LOOP) <failure>: Declare `ssize_t'.
  +     <compile_stack_type>: `size' and `avail' are now `size_t'.
   
  -2007-08-06  Chong Yidong  <cyd@stupidchicken.com>
  +     * regex.h <regoff_t>: Use ssize_t, not int.
  +     (re_search, re_search_2, re_match, re_match_2): Arguments that
  +     specify buffer/string position and length are now ssize_t and
  +     size_t.  Return type is regoff_t.
   
  -     * xdisp.c (redisplay_window): When restoring original buffer
  -     position, make sure it is still valid.
  +2011-04-16  Ben Key  <bkey76@gmail.com>
   
  -     * image.c (png_load): Ignore png-supplied background color.
  +     * nsfont.m: Fixed bugs in ns_get_family and
  +     ns_descriptor_to_entity that were caused by using free to
  +     deallocate memory blocks that were allocated by xmalloc (via
  +     xstrdup).  This caused Emacs to crash when compiled with
  +     XMALLOC_OVERRUN_CHECK defined (when Emacs was configured with
  +     --enable-checking=xmallocoverrun).  xfree is now used to
  +     deallocate these memory blocks.
  +
  +2011-04-15  Paul Eggert  <eggert@cs.ucla.edu>
  +
  +     * sysdep.c (emacs_read): Remove unnecessary check vs MAX_RW_COUNT.
  +
  +     emacs_write: Accept and return EMACS_INT for sizes.
  +     See http://lists.gnu.org/archive/html/emacs-devel/2011-04/msg00514.html
  +     et seq.
  +     * gnutls.c, gnutls.h (emacs_gnutls_read, emacs_gnutls_write):
  +     Accept and return EMACS_INT.
  +     (emacs_gnutls_write): Return the number of bytes written on
  +     partial writes.
  +     * sysdep.c, lisp.h (emacs_read, emacs_write): Likewise.
  +     (emacs_read, emacs_write): Remove check for negative size, as the
  +     Emacs source code has been audited now.
  +     * sysdep.c (MAX_RW_COUNT): New macro, to work around kernel bugs.
  +     (emacs_read, emacs_write): Use it.
  +     * process.c (send_process): Adjust to the new signatures of
  +     emacs_write and emacs_gnutls_write.  Do not attempt to store
  +     a byte offset into an 'int'; it might overflow.
  +     See http://lists.gnu.org/archive/html/emacs-devel/2011-04/msg00483.html
  +
  +     * sound.c: Don't assume sizes fit in 'int'.
  +     (struct sound_device.period_size, alsa_period_size):
  +     Return EMACS_INT, not int.
  +     (struct sound_device.write, vox_write, alsa_write):
  +     Accept EMACS_INT, not int.
  +     (wav_play, au_play): Use EMACS_INT to store sizes and to
  +     record read return values.
  +
  +2011-04-15  Ben Key  <bkey76@gmail.com>
  +
  +     * keyboard.c (Qundefined): Don't declare static since it is used
  +     in nsfns.m.
  +     * xfaces.c (Qbold, Qexpanded, Qitalic, Qcondensed): Don't declare
  +     static since they are used in nsfont.m.
  +
  +2011-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
  +
  +     * process.c (Qprocessp): Don't declare static.
  +     * lisp.h (Qprocessp): Declare again.
  +
  +2011-04-15  Juanma Barranquero  <lekktu@gmail.com>
  +
  +     * font.c (Qopentype): Don't make static (used from w32uniscribe.c).
  +
  +2011-04-14  Paul Eggert  <eggert@cs.ucla.edu>
  +
  +     Improve C-level modularity by making more things 'static'.
  +
  +     Don't publish debugger-only interfaces to other modules.
  +     * lisp.h (safe_debug_print, debug_output_compilation_hack):
  +     (verify_bytepos, count_markers): Move decls to the only modules
  +     that need them.
  +     * region-cache.h (pp_cache): Likewise.
  +     * window.h (check_all_windows): Likewise.
  +     * marker.c, print.c, region-cache.c, window.c: Decls moved here.
  +
  +     * sysdep.c (croak): Now static, if
  +     defined TIOCNOTTY || defined USG5 || defined CYGWIN.
  +     * syssignal.h (croak): Declare only if not static.
  +
  +     * alloc.c (refill_memory_reserve): Now static if
  +     !defined REL_ALLOC || defined SYSTEM_MALLOC.
  +     * lisp.h (refill_memory_reserve): Declare only if not static.
  +
  +     * xsettings.c, xsettings.h (xsettings_get_system_normal_font):
  +     Define only if USE_LUCID.
  +
  +     * xrdb.c (x_customization_string, x_rm_string): Now static.
  +
  +     * xmenu.c (x_menu_wait_for_event): Export only if USE_MOTIF.
  +     * xterm.h (x_menu_wait_for_event): Declare only if USE_MOTIF.
  +
  +     * xdisp.c (draw_row_with_mouse_face): Now static.
  +     * dispextern.h (draw_row_with_mouse_fave): Remove decl.
  +
  +     * window.h (check_all_windows): Mark externally visible.
  +
  +     * window.c (window_deletion_count): Now static.
  +
  +     * undo.c: Make symbols static if they're not exported.
  +     (last_undo_buffer, last_boundary_position, pending_boundary):
  +     Now static.
   
  -2007-08-06  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  +     * textprop.c (interval_insert_behind_hooks): Now static.
  +     (interval_insert_in_front_hooks): Likewise.
  +
  +     * term.c: Make symbols static if they're not exported.
  +     (tty_turn_off_highlight, get_tty_terminal, max_frame_cols):
  +     (max_frame_lines, tty_set_terminal_modes):
  +     (tty_reset_terminal_modes, tty_turn_off_highlight):
  +     (get_tty_terminal): Now static.
  +     (term_mouse_moveto): Do not define if HAVE_WINDOW_SYSTEM.
  +     * termhooks.h (term_mouse_moveto): Do not declare if
  +     HAVE_WINDOW_SYSTEM.
  +     * dispextern.h (tty_set_terminal_modes, tty_reset_terminal_modes):
  +     (tty_turn_off_highlight, get_tty_terminal): Remove decls.
  +
  +     * sysdep.c: Make symbols static if they're not exported.
  +     (emacs_get_tty, emacs_set_tty, old_fcntl_flags, old_fcntl_owner):
  +     Now static.
  +     (sigprocmask_set, full_mask): Remove; unused.
  +     (wait_debugging): Mark as visible.
  +     * syssignal.h (SIGFULLMASK, full_mask): Remove decls.
  +     * systty.h (emacs_get_tty, emacs_set_tty): Remove decls.
  +
  +     * syntax.c (syntax_temp): Define only if !__GNUC__.
  +
  +     * sound.c (current_sound_device, current_sound): Now static.
  +
  +     * search.c (searchbufs, searchbuf_head): Now static.
  +
  +     * scroll.c (scroll_cost): Remove; unused.
  +     * dispextern.h (scroll_cost): Remove decl.
  +
  +     * region-cache.h (pp_cache): Mark as externally visible.
  +
  +     * process.c: Make symbols static if they're not exported.
  +     (process_tick, update_tick, create_process, chan_process):
  +     (Vprocess_alist, proc_buffered_char, datagram_access):
  +     (fd_callback_data, send_process_frame, process_sent_to): Now static.
  +     (deactivate_process): Mark defn as static, as well as decl.
  +     * lisp.h (create_process): Remove decl.
  +     * process.h (chan_process, Vprocess_alist): Remove decls.
  +
  +     * print.c: Make symbols static if they're not exported.
  +     (print_depth, new_backquote_output, being_printed, print_buffer):
  +     (print_buffer_size, print_buffer_pos, print_buffer_pos_byte):
  +     (print_interval, print_number_index, initial_stderr_stream):
  +     Now static.
  +     * lisp.h (Fprinc): Remove decl.
  +     (debug_output_compilation_hack): Mark as externally visible.
  +
  +     * sysdep.c (croak): Move decl from here to syssignal.h.
  +     * syssignal.h (croak): Put it here, so the API can be checked when
  +     'croak' is called from dissociate_if_controlling_tty.
  +
  +     * minibuf.c: Make symbols static if they're not exported.
  +     (minibuf_save_list, choose_minibuf_frame): Now static.
  +     * lisp.h (choose_minibuf_frame): Remove decl.
  +
  +     * lisp.h (verify_bytepos, count_markers): Mark as externally visible.
  +
  +     * lread.c: Make symbols static if they're not exported.
  +     (read_objects, initial_obarray, oblookup_last_bucket_number):
  +     Now static.
  +     (make_symbol): Remove; unused.
  +     * lisp.h (initial_obarray, make_symbol): Remove decls.
  +
  +     * keyboard.c: Make symbols static if they're not exported.
  +     (single_kboard, recent_keys_index, total_keys, recent_keys):
  +     (this_command_key_count_reset, raw_keybuf, raw_keybuf_count):
  +     (this_single_command_key_start, echoing, last_auto_save):
  +     (read_key_sequence_cmd, dribble, recursive_edit_unwind):
  +     (command_loop, echo_now, keyboard_init_hook, help_char_p):
  +     (quit_throw_to_read_char, command_loop_2, top_level_1, poll_timer):
  +     (Vlispy_mouse_stem, double_click_count):
  +     Now static.
  +     (force_auto_save_soon): Define only if SIGDANGER.
  +     (ignore_mouse_drag_p): Now static if
  +     !defined HAVE_WINDOW_SYSTEM || defined USE_GTK || defined HAVE_NS.
  +     (print_help): Remove; unused.
  +     (stop_character, last_timer_event): Mark as externally visible.
  +     * keyboard.h (ignore_mouse_drag_p): Declare only if
  +     defined HAVE_WINDOW_SYSTEM && !defined USE_GTK && !defined HAVE_NS.
  +     (echo_now, help_char_p, quit_throw_to_read_char): Remove decls.
  +     * lisp.h (echoing): Remove decl.
  +     (force_auto_save_soon): Declare only if SIGDANGER.
  +     * xdisp.c (redisplay_window): Simplify code, to make it more
  +     obvious that ignore_mouse_drag_p is not accessed if !defined
  +     USE_GTK && !defined HAVE_NS.
  +
  +     * intervals.c: Make symbols static if they're not exported.
  +     (merge_properties_sticky, merge_interval_right, delete_interval):
  +     Now static.
  +     * intervals.h (merge_interval_right, delete_interval): Remove decls.
  +
  +     * insdel.c: Make symbols static if they're not exported.
  +     However, leave prepare_to_modify_buffer alone.  It's never
  +     called from outside this function, but that appears to be a bug.
  +     (combine_after_change_list, combine_after_change_buffer):
  +     (adjust_after_replace, signal_before_change): Now static.
  +     (adjust_after_replace_noundo): Remove; unused.
  +     * lisp.h (adjust_after_replace, adjust_after_replace_noundo):
  +     (signal_before_change): Remove decls.
  +
  +     * indent.c (val_compute_motion, val_vmotion): Now static.
  +
  +     * image.c: Make symbols static if they're not exported.
  +     * dispextern.h (x_create_bitmap_from_xpm_data): Do not declare
  +     if USE_GTK.
  +     * image.c (x_create_bitmap_from_xpm_data): Do not define if USE_GTK.
  +     (xpm_color_cache, ct_table, ct_colors_allocated): Now static.
  +
  +     * fringe.c (standard_bitmaps): Now static.
  +     (max_used_fringe_bitmap): Now static, unless HAVE_NS.
  +
  +     * frame.c: Make symbols static if they're not exported.
  +     (x_report_frame_params, make_terminal_frame): Now static.
  +     (get_frame_param): Now static, unless HAVE_NS.
  +     (x_fullscreen_adjust): Define if WINDOWSNT, not if HAVE_WINDOW_SYSTEM.
  +     (x_get_resource_string): Remove; not used.
  +     * frame.h (make_terminal_frame, x_report_frame_params):
  +     (x_get_resource_string); Remove decls.
  +     (x_fullscreen_adjust): Declare only if WINDOWSNT.
  +     * lisp.h (get_frame_param): Declare only if HAVE_NS.
  +
  +     * font.c, fontset.c: Make symbols static if they're not exported.
  +     * dispextern.h (FACE_SUITABLE_FOR_ASCII_CHAR_P): New macro.
  +     (FACE_SUITABLE_FOR_CHAR_P): Use it.
  +     * font.c (font_close_object): Now static.
  +     * font.h (font_close_object): Remove.
  +     * fontset.c (FONTSET_OBJLIST): Remove.
  +     (free_realized_fontset) #if-0 the body, which does nothing.
  +     (face_suitable_for_char_p): #if-0, as it's never called.
  +     * fontset.h (face_suitable_for_char_p): Remove decl.
  +     * xfaces.c (face_at_string_position):
  +     Use FACE_SUITABLE_FOR_ASCII_CHAR_P, not FACE_SUITABLE_FOR_CHAR_P,
  +     since 0 is always ASCII.
  +
  +     * fns.c (weak_hash_tables): Now static.
  +
  +     * fileio.c: Make symbols static if they're not exported.
  +     (auto_saving, auto_save_mode_bits, auto_save_error_occurred):
  +     (Vwrite_region_annotation_buffers): Now static.
  +
  +     * eval.c: Make symbols static if they're not exported.
  +     (backtrace_list, lisp_eval_depth, when_entered_debugger): Now static.
  +     * lisp.h (backtrace_list): Remove decl.
  +
  +     * emacs.c: Make symbols static if they're not exported.
  +     (malloc_state_ptr, malloc_using_checking, syms_of_emacs):
  +     (fatal_error_code, fatal_error_signal_hook, standard_args):
  +     Now static.
  +     (fatal_error_signal): Now static, unless FLOAT_CATCH_SIGKILL.
  +     (DEFINE_DUMMY_FUNCTION): Mark function as externally visible.
  +     (__CTOR_LIST__, __DTOR_LIST__): Now externally visible.
  +     * lisp.h (fatal_error_signal_hook): Remove decl.
  +     (fatal_error_signal): Declare only if FLOAT_CATCH_SIGKILL.
  +
  +     * editfns.c: Move a (normally-unused) function to its only use.
  +     * editfns.c, lisp.h (get_operating_system_release): Remove.
  +     * process.c (init_process) [DARWIN_OS]: Do it inline, as it is not
  +     worth the hassle of breaking this out.
  +
  +     * xterm.c: Make symbols static if they're not exported.
  +     (x_raise_frame, x_lower_frame, x_wm_set_window_state):
  +     (x_wm_set_icon_pixmap, x_initialize, XTread_socket_fake_io_error):
  +     (x_destroy_window, x_delete_display):
  +     Now static.
  +     (x_dispatch_event): Now static if ! (USE_MOTIF || USE_X_TOOLKIT).
  +     (x_mouse_leave): Remove; unused.
  +     * xterm.h (x_display_info_for_name, x_raise_frame, x_lower_frame):
  +     (x_destroy_window, x_wm_set_window_state, x_wm_set_icon_pixmap):
  +     (x_delete_display, x_initialize, x_set_border_pixel, x_screen_planes):
  +     Remove decls.
  +     (x_mouse_leave): Declare only if WINDOWSNT.
  +     (x_dispatch_event): Declare only if USE_MOTIF or USE_X_TOOLKIT.
  +     (xic_create_fontsetname): Declare only if HAVE_X_WINDOWS &&
  +     USE_X_TOOLKIT.
  +
  +     * ftxfont.c: Make symbols static if they're not exported.
  +     (ftxfont_driver): Export only if !defined HAVE_XFT && def8ined
  +     HAVE_FREETYPE.
  +     * font.h (ftxfont_driver): Likewise.
  +
  +     * xfns.c: Make symbols static if they're not exported.
  +     (x_last_font_name, x_display_info_for_name):
  +     (x_set_foreground_color, x_set_background_color, x_set_mouse_color):
  +     (x_set_cursor_color, x_set_border_pixel, x_set_border_color):
  +     (x_set_cursor_type, x_set_icon_type, x_set_icon_name):
  +     (x_set_scroll_bar_foreground, x_set_scroll_bar_background):
  +     (x_explicitly_set_name, x_set_title, xic_defaut_fontset, tip_timer):
  +     (last_show_tip_args): Now static.
  +     (xic_defaut_fontset, xic_create_fontsetname): Define only if
  +     defined HAVE_X_WINDOWS && defined USE_X_TOOLKIT
  +     (x_screen_planes): Remove; unused.
  +     * dispextern.h (x_screen_planes): Remove decl.
  +
  +     * dispnew.c: Make symbols static if they're not exported.
  +     * dispextern.h (redraw_garbaged_frames, scrolling):
  +     (increment_row_positions): Remove.
  +     * dispnew.c (new_glyph_matrix, increment_row_positions, scrolling):
  +     (delayed_size_change, glyph_matrix_count, glyph_pool_count):
  +     Now static.
  +     (redraw_garbaged_frames): Remove; unused.
  +
  +     * xfaces.c: Make symbols static if they're not exported.
  +     * dispextern.h (ascii_face_of_lisp_face, free_realized_face):
  +     Remove decls.
  +     * xterm.h (defined_color): Remove decls.
  +     (x_free_dpy_colors): Declare only if USE_X_TOOLKIT.
  +     * xfaces.c (tty_suppress_bold_inverse_default_colors_p):
  +     (menu_face_changed_default, defined_color, free_realized_face):
  +     (x_free_dpy_colors): Define only if USE_X_TOOLKIT.
  +     (ascii_face_of_lisp_face): Remove; unused.
  +
  +     * xdisp.c: Make symbols static if they're not exported.
  +     * dispextern.h (scratch_glyph_row, window_box_edges):
  +     (glyph_to_pixel_coords, set_cursor_from_row):
  +     (get_next_display_element, set_iterator_to_next):
  +     (highlight_trailing_whitespace, frame_to_window_pixel_xy):
  +     (show_mouse_face): Remove decls
  +     * frame.h (message_buf_print): Likewise.
  +     * lisp.h (pop_message, set_message, check_point_in_composition):
  +     Likewise.
  +     * xterm.h (set_vertical_scroll_bar): Likewise.
  +     * xdisp.c (list_of_error, Vmessage_stack, line_number_displayed):
  +     (message_buf_print, scratch_glyph_row, displayed_buffer):
  +     (set_iterator_to_next, pop_message, set_message, set_cursor_from_row):
  +     (get_next_display_element, show_mouse_face, window_box_edges):
  +     (frame_to_window_pixel_xy, check_point_in_composition):
  +     (set_vertical_scroll_bar, highlight_trailing_whitespace): Now static.
  +     (glyph_to_pixel_coords): Remove; unused.
  +
  +     * dired.c (file_name_completion): Now static.
  +
  +     * dbusbind.c (xd_in_read_queued_messages): Now static.
  +
  +     * lisp.h (circular_list_error, FOREACH): Remove; unused.
  +     * data.c (circular_list_error): Remove.
  +
  +     * commands.h (last_point_position, last_point_position_buffer):
  +     (last_point_position_window): Remove decls.
  +     * keyboard.c: Make these variables static.
  +
  +     * coding.h (coding, code_convert_region, encode_coding_gap):
  +     Remove decls.
  +     * coding.c (Vsjis_coding_system, Vbig5_coding_system):
  +     (iso_code_class, detect_coding, code_convert_region): Now static.
  +     (encode_coding_gap): Remove; unused.
  +
  +     * chartab.c (chartab_chars, chartab_bits): Now static.
  +
  +     * charset.h (charset_iso_8859_1): Remove decl.
  +     * charset.c (charset_iso_8859_1, charset_emacs, map_charset_for_dump):
  +     Now static.
  +
  +     * ccl.h (check_ccl_update, Vccl_program_table): Remove decls.
  +     * ccl.c (Vccl_program_table): Now static.
  +     (check_ccl_update): Remove; unused.
  +
  +     * category.c (SET_CATEGORY_SET, set_category_set): Move here.
  +     * category.h: ... from here.
  +     * category.c (check_category_table, set_category_set): Now static.
  +
  +     * casetab.c (Vascii_upcase_table, Vascii_eqv_table): Now static.
  +     * lisp.h: Remove these decls.
  +
  +     * buffer.c (buffer_count): Remove unused var.
  +
  +     * bidi.c (bidi_dump_cached_states): Mark as externally visible,
  +     so that it's not optimized away.
  +     (bidi_ignore_explicit_marks_for_paragraph_level): Likewise.
  +     * dispextern.h (bidi_dump_cached_states): Remove, since it's
  +     exported only to the debugger.
  +
  +     * atimer.c (alarm_signal_handler, run_all_atimers): Now static.
  +     * atimer.h (run_all_atimers): Remove; not exported.
  +
  +     font.c: Make copy_font_spec and merge_font_spec ordinary C functions.
  +     * font.c (copy_font_spec): Rename from Fcopy_font_spec, since it
  +     was inaccessible from Lisp.
  +     (merge_font_spec): Likewise, renaming from Fmerge_font_spec.
  +     * font.c, font.h, fontset.c, xfaces.c, xfont.c: Change all uses.
  +
  +     alloc.c: Import and export fewer symbols, and remove unused items.
  +     * lisp.h (suppress_checking, die): Declare only if ENABLE_CHECKING
  +     is defined.
  +     (suppress_checking): Add EXTERNALLY_VISIBLE attribute, so that
  +     it's not optimized away by whole-program optimization.
  +     (message_enable_multibyte, free_misc): Remove.
  +     (catchlist, handlerlist, mark_backtrace):
  +     Declare only if BYTE_MARK_STACK.
  +     (mark_byte_stack): Likewise, fixing a ifdef-vs-if typo.
  +     * alloc.c (pure): Export only if VIRT_ADDR_VARIES is defined.
  +     (message_enable_multibyte): Remove decl.
  +     (free_misc, interval_free_list, float_block, float_block_index):
  +     (n_float_blocks, float_free_list, cons_block, cons_block_index):
  +     (cons_free_list, last_marked_index):
  +     Now static.
  +     (suppress_checking, die): Define only if ENABLE_CHECKING is defined.
  +     * eval.c (catchlist, handlerlist): Export only if BYTE_MARK_STACK.
  +     (mark_backtrace): Define only if BYTE_MARK_STACK.
  +     * xdisp.c (message_enable_multibyte): Now static.
  +
  +     Declare Lisp_Object Q* variables to be 'static' if not exported.
  +     This makes it easier for human readers (and static analyzers)
  +     to see whether these variables are used from other modules.
  +     * alloc.c, buffer.c, bytecode.c, callint.c, casetab.c, category.c:
  +     * ccl.c, character.c, charset.c, cmds.c, coding.c, composite.c:
  +     * data.c, dbusbind.c, dired.c, editfns.c, eval.c, fileio.c, fns.c:
  +     * font.c, frame.c, fringe.c, ftfont.c, image.c, keyboard.c, keymap.c:
  +     * lread.c, macros.c, minibuf.c, print.c, process.c, search.c:
  +     * sound.c, syntax.c, textprop.c, window.c, xdisp.c, xfaces.c, xfns.c:
  +     * xmenu.c, xselect.c:
  +     Declare Q* vars static if they are not used in other modules.
  +     * ccl.h, character.h, charset.h, coding.h, composite.h, font.h:
  +     * frame.h, intervals.h, keyboard.h, lisp.h, process.h, syntax.h:
  +     Remove decls of unexported vars.
  +     * keyboard.h (EVENT_HEAD_UNMODIFIED): Remove now-unused macro.
  +
  +     * lisp.h (DEFINE_FUNC): Make sname 'static'.
  +
  +     Make Emacs functions such as Fatom 'static' by default.
  +     This makes it easier for human readers (and static analyzers)
  +     to see whether these functions can be called from other modules.
  +     DEFUN now defines a static function.  To make the function external
  +     so that it can be used in other C modules, use the new macro DEFUE.
  +     * lisp.h (Funibyte_char_to_multibyte, Fsyntax_table_p):
  +     (Finit_image_library):
  +     (Feval_region, Fbacktrace, Ffetch_bytecode, Fswitch_to_buffer):
  +     (Ffile_executable_p, Fmake_symbolic_link, Fcommand_execute):
  +     (Fget_process, Fdocumentation_property, Fbyte_code, Ffile_attributes):
  +     Remove decls, since these functions are now static.
  +     (Funintern, Fget_internal_run_time): New decls, since these functions
  +     were already external.
  +
  +     * alloc.c, buffer.c, callint.c, callproc.c, casefiddle.c, casetab.c:
  +     * ccl.c, character.c, chartab.c, cmds.c, coding.c, data.c, dispnew.c:
  +     * doc.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, floatfns.c:
  +     * fns.c, font.c, fontset.c, frame.c, image.c, indent.c:
  +     * keyboard.c, keymap.c, lread.c:
  +     * macros.c, marker.c, menu.c, minibuf.c, print.c, process.c, search.c:
  +     * syntax.c, term.c, terminal.c, textprop.c, undo.c:
  +     * window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c, xsettings.c:
  +     Mark functions with DEFUE instead of DEFUN,
  +     if they are used in other modules.
  +     * buffer.c (Fset_buffer_major_mode, Fdelete_overlay): New forward
  +     decls for now-static functions.
  +     * buffer.h (Fdelete_overlay): Remove decl.
  +     * callproc.c (Fgetenv_internal): Mark as internal.
  +     * composite.c (Fremove_list_of_text_properties): Remove decl.
  +     (Fcomposition_get_gstring): New forward static decl.
  +     * composite.h (Fcomposite_get_gstring): Remove decl.
  +     * dired.c (Ffile_attributes): New forward static decl.
  +     * doc.c (Fdocumntation_property): New forward static decl.
  +     * eval.c (Ffetch_bytecode): New forward static decl.
  +     (Funintern): Remove extern decl; now in .h file where it belongs.
  +     * fileio.c (Fmake_symbolic_link): New forward static decl.
  +     * image.c (Finit_image_library): New forward static decl.
  +     * insdel.c (Fcombine_after_change_execute): Make forward decl static.
  +     * intervals.h (Fprevious_property_change):
  +     (Fremove_list_of_text_properties): Remove decls.
  +     * keyboard.c (Fthis_command_keys): Remove decl.
  +     (Fcommand_execute): New forward static decl.
  +     * keymap.c (Flookup_key): New forward static decl.
  +     (Fcopy_keymap): Now static.
  +     * keymap.h (Flookup_key): Remove decl.
  +     * process.c (Fget_process): New forward static decl.
  +     (Fprocess_datagram_address): Mark as internal.
  +     * syntax.c (Fsyntax_table_p): New forward static decl.
  +     (skip_chars): Remove duplicate decl.
  +     * textprop.c (Fprevious_property_change): New forward static decl.
  +     * window.c (Fset_window_fringes, Fset_window_scroll_bars):
  +     Now internal.
  +     (Fset_window_margins, Fset_window_vscroll): New forward static decls.
  +     * window.h (Fset_window_vscroll, Fset_window_margins): Remove decls.
  +
  +     * editfns.c (Fformat): Remove unreachable code.
  +
  +2011-04-14  Andreas Schwab  <schwab@linux-m68k.org>
  +
  +     * fileio.c (Finsert_file_contents): Fix typo in 2005-05-13
  +     change.  (Bug#8496)
  +
  +2011-04-13  Eli Zaretskii  <eliz@gnu.org>
  +
  +     * xdisp.c (handle_invisible_prop): Don't call bidi_paragraph_init
  +     when at ZV.  (Bug#8487)
  +
  +2011-04-12  Andreas Schwab  <schwab@linux-m68k.org>
  +
  +     * charset.c (Fclear_charset_maps): Use xfree instead of free.
  +     (Bug#8437)
  +     * keyboard.c (parse_tool_bar_item): Likewise.
  +     * sound.c (sound_cleanup, alsa_close): Likewise.
  +     * termcap.c (tgetent): Likewise.
  +     * xfns.c (x_default_font_parameter): Likewise.
  +     * xsettings.c (read_and_apply_settings): Likewise.
  +
  +     * alloc.c (overrun_check_malloc, overrun_check_realloc)
  +     (overrun_check_free): Protoize.
  +
  +2011-04-12  Paul Eggert  <eggert@cs.ucla.edu>
  +
  +     * sysdep.c (emacs_read, emacs_write): Check for negative sizes
  +     since callers should never pass a negative size.
  +     Change the signature to match that of plain 'read' and 'write'; see
  +     <http://lists.gnu.org/archive/html/emacs-devel/2011-04/msg00397.html>.
  +     * lisp.h: Update prototypes of emacs_write and emacs_read.
  +
  +2011-04-11  Eli Zaretskii  <eliz@gnu.org>
  +
  +     * xdisp.c (redisplay_window): Don't try to determine the character
  +     position of the scroll margin if the window start point w->startp
  +     is outside the buffer's accessible region.  (Bug#8468)
  +
  +2011-04-10  Eli Zaretskii  <eliz@gnu.org>
  +
  +     Fix write-region and its subroutines for buffers > 2GB.
  +     * fileio.c (a_write, e_write): Modify declaration of arguments and
  +     local variables to support buffers larger than 2GB.
  +     (Fcopy_file): Use EMACS_INT for return value of emacs_read.
  +
  +     * sysdep.c (emacs_write, emacs_read): Use ssize_t for last
  +     argument, local variables, and return value.
  +
  +     * lisp.h: Update prototypes of emacs_write and emacs_read.
  +
  +     * sound.c (vox_write): Use ssize_t for return value of emacs_write.
  +
  +2011-04-10  Paul Eggert  <eggert@cs.ucla.edu>
  +
  +     * xdisp.c (vmessage): Use memchr, not strnlen, which some hosts lack.
  +
  +     Fix more problems found by GCC 4.6.0's static checks.
  +
  +     * xdisp.c (vmessage): Use a better test for character truncation.
  +
  +     * charset.c (load_charset_map): <, not <=, for optimization,
  +     and to avoid potential problems with integer overflow.
  +     * chartab.c (sub_char_table_set_range, char_table_set_range): Likewise.
  +     * casetab.c (set_identity, shuffle): Likewise.
  +     * editfns.c (Fformat): Likewise.
  +     * syntax.c (skip_chars): Likewise.
  +
  +     * xmenu.c (set_frame_menubar): Allocate smaller local vectors.
  +     This also lets GCC 4.6.0 generate slightly better loop code.
  +
  +     * callint.c (Fcall_interactively): <, not <=, for optimization.
  +     (Fcall_interactively): Count the number of arguments produced,
  +     not the number of arguments given.  This is simpler and lets GCC
  +     4.6.0 generate slightly better code.
  +
  +     * ftfont.c: Distingish more carefully between FcChar8 and char.
  +     The previous code passed unsigned char * to a functions like
  +     strlen and xstrcasecmp that expect char *, which does not
  +     conform to the C standard.
  +     (get_adstyle_property, ftfont_pattern_entity): Use FcChar8 for
  +     arguments to FcPatternGetString, and explicitly cast FcChar8 * to
  +     char * when the C standard requires it.
   
  -     * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
  -     Use kCFAbsoluteTimeIntervalSince1970.
  +     * keyboard.c (read_char): Remove unused var.
   
  -     * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
  -     New variable.
  -     [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
  -     event loop should be quit.
  -     [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
  -     Quit dialog event loop if quit_dialog_event_loop is set.
  +     * eval.c: Port to Windows vsnprintf (Bug#8435).
  +     Include <limits.h>.
  +     (SIZE_MAX): Define if the headers do not.
  +     (verror): Do not give up if vsnprintf returns a negative count.
  +     Instead, grow the buffer.  This ports to Windows vsnprintf, which
  +     does not conform to C99.  Problem reported by Eli Zaretskii.
  +     Also, simplify the allocation scheme, by avoiding the need for
  +     calling realloc, and removing the ALLOCATED variable.
   
  -     * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
  -     (Selection): New typedef.  Use instead of ScrapRef.
  -     (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
  -     (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
  -     (mac_clear_selection): Rename from clear_scrap.
  -     (get_flavor_type_from_symbol): New argument SEL and subsume function of
  -     scrap_has_target_type.  All uses changed.
  -     (mac_get_selection_ownership_info, mac_valid_selection_value_p)
  -     (mac_selection_has_target_p): New functions.
  -     (mac_put_selection_value): Rename from put_scrap_string.
  -     (mac_get_selection_value): Rename from get_scrap_string.
  -     (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
  -     (put_scrap_private_timestamp, scrap_has_target_type)
  -     (get_scrap_private_timestamp): Remove functions.
  -     (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
  -     (x_own_selection, x_get_local_selection):
  -     Use mac_valid_selection_value_p.
  -     (x_own_selection): Don't use put_scrap_private_timestamp.
  -     Record OWNERSHIP-INFO into Vselection_alist instead.
  -     (x_get_local_selection): Don't check type if request is local.
  -     (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
  -     Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
  +     * eval.c (verror): Initial buffer size is 4000 (not 200) bytes.
   
  -2007-08-04  Jan Djärv  <jan.h.d@swipnet.se>
  +     Remove invocations of doprnt, as Emacs now uses vsnprintf.
  +     But keep the doprint source code for now, as we might revamp it
  +     and use it again (Bug#8435).
  +     * lisp.h (doprnt): Remove.
  +     * Makefile.in (base_obj): Remove doprnt.o.
  +     * deps.mk (doprnt.o): Remove.
   
  -     * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
  -     add comment explaining why.
  +     error: Print 32- and 64-bit integers portably (Bug#8435).
  +     Without this change, on typical 64-bit hosts error ("...%d...", N)
  +     was used to print both 32- and 64-bit integers N, which relied on
  +     undefined behavior.
  +     * lisp.h, src/m/amdx86-64.h, src/m/ia64.h, src/m/ibms390x.h (pEd):
  +     New macro.
  +     * lisp.h (error, verror): Mark as printf-like functions.
  +     * eval.c (verror): Use vsnprintf, not doprnt, to do the real work.
  +     Report overflow in size calculations when allocating printf buffer.
  +     Do not truncate output string at its first null byte.
  +     * xdisp.c (vmessage): Use vsnprintf, not doprnt, to do the real work.
  +     Truncate the output at a character boundary, since vsnprintf does not
  +     do that.
  +     * charset.c (check_iso_charset_parameter): Convert internal
  +     character to string before calling 'error', since %c now has the
  +     printf meaning.
  +     * coding.c (Fdecode_sjis_char, Fdecode_big5_char): Avoid int
  +     overflow when computing char to be passed to 'error'.  Do not
  +     pass Lisp_Object to 'error'; pass the integer instead.
  +     * nsfns.m (Fns_do_applescript): Use int, not long, since it's
  +     formatted with plain %d.
   
  -2007-08-03  Richard Stallman  <rms@gnu.org>
  +     * eval.c (internal_lisp_condition_case): Don't pass spurious arg.
   
  -     * fileio.c (Fvisited_file_modtime): Use make_time.
  +     * keyboard.c (access_keymap_keyremap): Print func name, not garbage.
   
  -2007-08-01  Ryo Yoshitake  <ryo@shiftmode.net>  (tiny change)
  +     * coding.c (Fdecode_sjis_char): Don't assume CODE fits in int.
   
  -     * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
  -     build.
  +     * xterm.c (x_catch_errors): Remove duplicate declaration.
   
  -2007-07-31  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * term.c (maybe_fatal): Mark its 3rd arg as a printf format, too.
   
  -     * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
  +     * xdisp.c, lisp.h (message_nolog): Remove; unused.
   
  -2007-07-30  Katsumi Yamaoka  <yamaoka@jpl.org>
  +2011-04-10  Jim Meyering  <meyering@redhat.com>
   
  -     * puresize.h (BASE_PURESIZE): Increase to 1130000.
  +     use ssize_t and size_t for read- and write-like emacs_gnutls_* functions
  +     * gnutls.c (emacs_gnutls_read): Adjust signature to be more read-like:
  +     return ssize_t not "int", and use size_t as the buffer length.
  +     (emacs_gnutls_write): Likewise, and make the buffer pointer "const".
  +     * gnutls.h: Update declarations.
  +     * process.c (read_process_output): Use ssize_t, to match.
  +     (send_process): Likewise.
   
  -2007-07-30  Richard Stallman  <rms@gnu.org>
  +2011-04-09  Chong Yidong  <cyd@stupidchicken.com>
   
  -     * lread.c (readevalloop, read1): Treat NBSP as whitespace.
  +     * image.c (Fimagemagick_types): Doc fix, and comment cleanup.
   
  -2007-07-29  Jan Djärv  <jan.h.d@swipnet.se>
  +2011-04-09  Chong Yidong  <cyd@stupidchicken.com>
  +
  +     * ftfont.c (get_adstyle_property, ftfont_pattern_entity):
  +     Use unsigned char, to match FcChar8 type definition.
   
  -     * gmalloc.c (__malloc_initialize): Remove pthread_once.  Not needed.
  +     * xterm.c (handle_one_xevent):
  +     * xmenu.c (create_and_show_popup_menu):
  +     * xselect.c (x_decline_selection_request)
  +     (x_reply_selection_request): Avoid type-punned deref of X events.
   
  -2007-07-28  Nick Roberts  <nickrob@snap.net.nz>
  +2011-04-09  Eli Zaretskii  <eliz@gnu.org>
   
  -     * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
  -     remote default-directory.
  +     Fix some uses of `int' instead of EMACS_INT.
  +     * search.c (string_match_1, fast_string_match)
  +     (fast_c_string_match_ignore_case, fast_string_match_ignore_case)
  +     (scan_buffer, find_next_newline_no_quit)
  +     (find_before_next_newline, search_command, Freplace_match)
  +     (Fmatch_data): Make some `int' variables be EMACS_INT.
   
  -     * buffer.c (mode-line-format): Update doc string.
  +     * xdisp.c (display_count_lines): 3rd argument and return value now
  +     EMACS_INT.  All callers changed.
  +     (pint2hrstr): Last argument is now EMACS_INT.
   
  -2007-07-27  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  +     * coding.c (detect_coding_utf_8, detect_coding_emacs_mule)
  +     (detect_coding_iso_2022, detect_coding_sjis, detect_coding_big5)
  +     (detect_coding_ccl, detect_coding_charset, decode_coding_utf_8)
  +     (decode_coding_utf_16, decode_coding_emacs_mule)
  +     (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
  +     (decode_coding_ccl, decode_coding_charset)
  +     <consumed_chars, consumed_chars_base>: Declare EMACS_INT.
  +     (decode_coding_iso_2022, decode_coding_emacs_mule)
  +     (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
  +     <char_offset, last_offset>: Declare EMACS_INT.
  +     (encode_coding_utf_8, encode_coding_utf_16)
  +     (encode_coding_emacs_mule, encode_invocation_designation)
  +     (encode_designation_at_bol, encode_coding_iso_2022)
  +     (encode_coding_sjis, encode_coding_big5, encode_coding_ccl)
  +     (encode_coding_raw_text, encode_coding_charset) <produced_chars>:
  +     Declare EMACS_INT.
  +     (ASSURE_DESTINATION): Declare more_bytes EMACS_INT.
  +     (encode_invocation_designation): Last argument P_NCHARS is now
  +     EMACS_INT.
  +     (decode_eol): Declare pos_byte, pos, and pos_end EMACS_INT.
  +     (produce_chars): from_nchars and to_nchars are now EMACS_INT.
   
  -     * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
  -     scroll bar gap.
  -     (x_scroll_bar_create): Set bar->fringe_extended_p.
  -     (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
  -     on frame edge.  Check fringe background extension.  Don't clear
  -     extended fringe background area.
  +     * coding.h (struct coding_system) <head_ascii>: Declare EMACS_INT.
  +     All users changed.
   
  -     * w32term.h (struct scroll_bar): New member fringe_extended_p.
  -     (w32_fill_area): Enclose multiple statements with do ... while (0).
  +     * ccl.c (Fccl_execute_on_string): Declare some variables
  +     EMACS_INT.
   
  -     * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
  -     Extend fringe background to scroll bar gap.
  -     (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
  -     Set bar->fringe_extended_p.
  -     (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
  -     Put leftmost/rightmost scroll bars on frame edge.  Check fringe
  -     background extension.  Don't clear extended fringe background area.
  +2011-04-08  Samuel Thibault  <sthibault@debian.org>  (tiny change)
   
  -     * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
  -     New member fringe_extended_p.
  +     * term.c (init_tty): Fix incorrect ifdef placement (Bug#8450).
   
  -2007-07-25  Glenn Morris  <rgm@gnu.org>
  +2011-03-19  Christoph Scholtes  <cschol2112@googlemail.com>
   
  -     * Relicense all FSF files to GPLv3 or later.
  +     * process.c (Fformat_network_address): Doc fix.
   
  -     * COPYING: Switch to GPLv3.
  +2011-04-08  T.V. Raman  <tv.raman.tv@gmail.com>  (tiny change)
   
  -2007-07-25  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * xml.c (parse_region): Avoid creating spurious whiespace nodes.
   
  -     * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
  +2011-04-08  Chong Yidong  <cyd@stupidchicken.com>
   
  -     * data.c (Finteractive_form): Check for the presence of an
  -     `interactive-form' symbol property more thoroughly.
  +     * keyboard.c (read_char): Call Lisp function help-form-show,
  +     instead of using internal_with_output_to_temp_buffer.
  +     (Qhelp_form_show): New var.
  +     (syms_of_keyboard): Use DEFSYM macro.
   
  -     * data.c (Finteractive_form): Use an `interactive-form' property if
  -     present, analogous to the function-documentation property.
  +     * print.c (internal_with_output_to_temp_buffer): Function deleted.
   
  -2007-07-24  Jason Rumney  <jasonr@gnu.org>
  +     * lisp.h (internal_with_output_to_temp_buffer): Remove prototype.
   
  -     * w32fns.c (x_real_positions): Get real position from OS instead of
  -     calculating it.
  +2011-04-06  Chong Yidong  <cyd@stupidchicken.com>
   
  -2007-07-23  Jason Rumney  <jasonr@gnu.org>
  +     * process.c (Flist_processes): Remove to Lisp.
  +     (list_processes_1): Delete.
   
  -     * filelock.c (current_lock_owner): Allow for @ sign in username.
  +2011-04-06  Eli Zaretskii  <eliz@gnu.org>
   
  -2007-07-22  Nick Roberts  <nickrob@snap.net.nz>
  +     * msdos.c (careadlinkat, careadlinkatcwd): MS-DOS replacements.
   
  -     * xdisp.c (decode_mode_spec): Add case 'R' for to test for
  -     remote default-directory.
  +     * w32.c (careadlinkat, careadlinkatcwd): New always-fail stubs.
   
  -     * buffer.c (mode-line-format): Describe above case in doc string.
  +2011-04-06  Paul Eggert  <eggert@cs.ucla.edu>
   
  -2007-07-20  Eli Zaretskii  <eliz@gnu.org>
  +     Fix more problems found by GCC 4.6.0's static checks.
   
  -     * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
  -     Define if not defined.
  +     * xmenu.c (Fx_popup_dialog): Don't assume string is free of formats.
   
  -2007-07-18  Jason Rumney  <jasonr@gnu.org>
  +     * menu.c (Fx_popup_menu): Don't assume error_name lacks printf formats.
   
  -     * w32proc.c (w32_executable_type): Handle 64 bit executables.
  +     * lisp.h (message, message_nolog, fatal): Mark as printf-like.
   
  -2007-07-18  Richard Stallman  <rms@gnu.org>
  +     * xdisp.c (vmessage): Mark as a printf-like function.
   
  -     * data.c (Fsetq_default): Doc fix.
  +     * term.c (vfatal, maybe_fatal): Mark as printf-like functions.
   
  -     * eval.c (Fsetq): Doc fix.
  +     * sound.c (sound_warning): Don't crash if arg contains a printf format.
   
  -2007-07-18  Juanma Barranquero  <lekktu@gmail.com>
  +     * image.c (tiff_error_handler, tiff_warning_handler): Mark as
  +     printf-like functions.
  +     (tiff_load): Add casts to remove these marks before passing them
  +     to system-supplied API.
   
  -     * coding.c (Ffind_operation_coding_system):
  -     * eval.c (For, Fand): Doc fixes.
  -     Reported by Johan Bockgård.
  +     * eval.c (Fsignal): Remove excess argument to 'fatal'.
   
  -2007-07-18  Jan Djärv  <jan.h.d@swipnet.se>
  +     * coding.c (EMIT_ONE_BYTE, EMIT_TWO_BYTES): Use unsigned, not int.
  +     This avoids several warnings with gcc -Wstrict-overflow.
  +     (DECODE_COMPOSITION_RULE): If the rule is invalid, goto invalid_code
  +     directly, rather than having caller test rule sign.  This avoids
  +     some unnecessary tests.
  +     * composite.h (COMPOSITION_ENCODE_RULE_VALID): New macro.
  +     (COMPOSITION_ENCODE_RULE): Arguments now must be valid.  This
  +     affects only one use, in DECODE_COMPOSITION_RULE, which is changed.
   
  -     * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
  +     * xfont.c (xfont_text_extents): Remove var that was set but not used.
  +     (xfont_open): Avoid unnecessary tests.
   
  -     * xterm.h: Declare x_ewmh_activate_frame.
  +     * composite.c (composition_gstring_put_cache): Use unsigned integer.
   
  -     * xterm.c (x_ewmh_activate_frame): New function.
  -     (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
  +     * composite.h, composite.c (composition_gstring_put_cache):
  +     Use EMACS_INT, not int, for length.
   
  -2007-07-17  Martin Rudalics  <rudalics@gmx.at>
  +     * composite.h (COMPOSITION_DECODE_REFS): New macro,
  +     breaking out part of COMPOSITION_DECODE_RULE.
  +     (COMPOSITION_DECODE_RULE): Use it.
  +     * composite.c (get_composition_id): Remove unused local vars,
  +     by using the new macro.
   
  -     * window.c (Fdisplay_buffer): If largest or LRU window is the
  -     only window, split it even if it is not eligible for splitting.
  -     This restores the original behavior broken by the 2007-07-15
  -     change.
  +     * textprop.c (set_text_properties_1): Change while to do-while,
  +     since the condition is always true at first.
   
  -2007-07-17  Glenn Morris  <rgm@gnu.org>
  +     * intervals.c (graft_intervals_into_buffer): Mark var as used.
  +     (interval_deletion_adjustment): Return unsigned value.
  +     All uses changed.
   
  -     * abbrev.c (abbrev_check_chars): New function.
  -     (Fdefine_global_abbrev, Fdefine_mode_abbrev):
  -     Call abbrev_check_chars to check abbrev characters are word
  -     constituents.  Doc fix.
  +     * process.c (list_processes_1, create_pty, read_process_output):
  +     (exec_sentinel): Remove vars that were set but not used.
  +     (create_pty): Remove unnecessary "volatile"s.
  +     (Fnetwork_interface_info): Avoid possibility of int overflow.
  +     (read_process_output): Do adaptive read buffering even if carryover.
  +     (read_process_output): Simplify nbytes computation if buffered.
   
  -2007-07-17  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * bytecode.c (exec_byte_code): Rename local to avoid shadowing.
   
  -     * process.c (Fstart_process, Fmake_network_process)
  -     (read_process_output): Fix up last changes.
  +     * syntax.c (scan_words): Remove var that was set but not used.
  +     (update_syntax_table): Use unsigned instead of int.
   
  -2007-07-16  Eli Zaretskii  <eliz@gnu.org>
  +     * 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.
   
  -     * makefile.w32-in (clean): Don't delete *~.
  +     * print.c (print_error_message): Avoid int overflow.
   
  -2007-07-16  Andreas Schwab  <schwab@suse.de>
  +     * font.c (font_list_entities): Redo for clarity,
  +     so that reader need not know FONT_DPI_INDEX + 1 == FONT_SPACING_INDEX.
   
  -     * window.c (Fdisplay_buffer): Use NILP.
  -     (Fset_window_scroll_bars): Likewise.
  +     * font.c (font_find_for_lface, Ffont_get_glyphs): Remove unused vars.
  +     (font_score): Avoid potential overflow in diff calculation.
   
  -2007-07-15  Martin Rudalics  <rudalics@gmx.at>
  +     * fns.c (substring_both): Remove var that is set but not used.
  +     (sxhash): Redo loop for clarity and to avoid wraparound warning.
   
  -     * window.c (window_min_size_2): New function.
  -     (window_min_size_1, size_window, Fdisplay_buffer)
  -     (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
  -     windows without mode- or header-lines when window-min-height is
  -     too small.
  -     (size_window): Reset nodelete_p after testing it, following an
  -     earlier note by Kim F. Storm.
  -     (display_buffer): Do not set split_height_threshold to twice the
  -     value of window_min_height to avoid changing the value of a
  -     customizable variable.  Rather explicitly check whether the
  -     height of the window that shall be splitted is at least as large
  -     as split_height_threshold.
  -     (Fwindow_full_width_p): New defun.
  -     (syms_of_window): Defsubr it.
  +     * eval.c (funcall_lambda): Rename local to avoid shadowing.
   
  -     * window.h: Add EXFUN for Fwindow_full_width_p.
  +     * 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.
   
  -2007-07-14  Jason Rumney  <jasonr@gnu.org>
  +     * search.c (boyer_moore, wordify): Remove vars set but not used.
  +     (wordify): Omit three unnecessary tests.
   
  -     * process.c [WINDOWSNT]: Don't undefine AF_INET6.
  +     * indent.c (MULTIBYTE_BYTES_WIDTH): Don't compute wide_column.
  +     All callers changed.  This avoids the need for an unused var.
   
  -2007-07-14  Richard Stallman  <rms@gnu.org>
  +     * casefiddle.c (casify_region): Remove var that is set but not used.
   
  -     * eval.c (maybe_call_debugger): New function.
  -     (find_handler_clause): Use maybe_call_debugger.
  -     Call it when the handler says `debug'.
  -     Eliminate DEBUGGER_VALUE_PTR.
  -     (Fsignal): Eliminate debugger_value.
  -     (Qdebug): New variable.
  -     (syms_of_eval): Initialize it.
  +     * dired.c (file_name_completion): Remove var that is set but not used.
   
  -2007-07-14  Juanma Barranquero  <lekktu@gmail.com>
  +     * fileio.c (Finsert_file_contents): Make EOF condition clearer.
   
  -     * eval.c (Fprogn):
  -     * keyboard.c (Ftrack_mouse):
  -     * print.c (Fwith_output_to_temp_buffer):
  -     * window.c (Fsave_window_excursion): Doc fix.
  +     * fileio.c (Finsert_file_contents): Avoid signed integer overflow.
  +     (Finsert_file_contents): Remove unnecessary code checking fd.
   
  -2007-07-13  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * minibuf.c (read_minibuf_noninteractive): Use size_t for sizes.
  +     Check for integer overflow on size calculations.
   
  -     * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
  +     * buffer.c (Fprevious_overlay_change): Remove var that is set
  +     but not used.
   
  -2007-07-12  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * 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.
   
  -     * process.h (struct Lisp_Process): Turn slots infd, outfd,
  -     kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
  -     inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
  -     read_output_delay, and read_output_skip from Lisp_Objects to ints.
  -     Remove unused encoding_carryover.
  -     * process.c: Adjust all functions accordingly.
  +     * gtkutil.c (xg_get_file_with_chooser): Mark var as initialized.
   
  -2007-07-12  Richard Stallman  <rms@gnu.org>
  +     * image.c (lookup_image): Remove var that is set but not used.
  +     (xbm_load): Use parse_p, for gcc -Werror=unused-but-set-variable.
   
  -     * term.c: Include unistd.h only if HAVE_UNISTD_H.
  +     * fontset.c (Finternal_char_font, Ffontset_info): Remove vars
  +     that are set but not used.
   
  -2007-07-11  Jason Rumney  <jasonr@gnu.org>
  +     * xfns.c (make_invisible_cursor): Don't return garbage
  +     if XCreateBitmapFromData fails (Bug#8410).
   
  -     * makefile.w32-in (LIBS): Include OLE32.
  +     * xselect.c (x_get_local_selection, x_handle_property_notify):
  +     Remove vars that are set but not used.
   
  -     * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
  -     (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
  +     * xfns.c (x_create_tip_frame): Remove var that is set but not used.
  +     (make_invisible_cursor): Initialize a possibly-uninitialized variable.
   
  -2007-07-11  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * 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.
   
  -     * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
  -     * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
  -     from a Lisp_Object into a bare pointer.
  -     (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
  -     Adjust the code correspondingly.
  +     * xfaces.c (realize_named_face): Remove vars that are set but not used.
  +     (map_tty_color) [!defined MSDOS]: Likewise.
   
  -     * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
  +     * term.c (tty_write_glyphs): Use size_t; this avoids overflow warning.
   
  -     * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
  -     (term_show_mouse_face): Remove unused var `j'.
  -     (handle_one_term_event): Remove unused vars `i' and `j'.
  -     Don't cast return value of ttyname since it's not necessary.
  +     * 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.
   
  -2007-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * bytecode.c (Fbyte_code) [!defined BYTE_CODE_SAFE]: Remove var
  +     that is set but not used.
   
  -     * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
  -     USE_LSB_TAG.  Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
  +     * print.c (print_object): Remove var that is set but not used.
   
  -     * fns.c (map_char_table): Use an array of int for `indices' rather than
  -     an array of Lisp_Objects (which are only ever integers anyway).
  -     (Fmap_char_table): Update caller.
  -     * lisp.h: Update prototype.
  -     * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
  -     * fontset.c (Ffontset_info):
  -     * casetab.c (set_case_table): Update callers.
  +     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.
   
  -     * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
  +2011-04-04  Stefan Monnier  <monnier@iro.umontreal.ca>
   
  -     * keymap.c (struct accessible_keymaps_data)
  -     (struct where_is_internal_data): New structures.
  -     (accessible_keymaps_1, where_is_internal_1): Use them to change
  -     interface to adhere to the one used by map_keymap.
  -     (Faccessible_keymaps, where_is_internal): Use map_keymap.
  -     (accessible_keymaps_char_table, where_is_internal_2): Remove.
  +     * keyboard.c (safe_run_hook_funcall): Fix last change (don't stop at the
  +     first non-nil return value).
   
  -     * keymap.h (map_keymap_function_t): More informative prototype.
  +2011-04-03  Jan Djärv  <jan.h.d@swipnet.se>
   
  -2007-07-10  Guanpeng Xu  <herberteuler@hotmail.com>
  +     * nsterm.m (ns_update_auto_hide_menu_bar): Define MAC_OS_X_VERSION_10_6
  +     if not defined (Bug#8403).
   
  -     * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
  -     (looking_at_1): Don't change search_regs and last_thing_searched
  -     if `inhibit-changing-match-data' is non-nil.
  -     (string_match_1, search_buffer, set_search_regs): Likewise.
  -     (syms_of_search): Add Lisp level definition for
  -     `inhibit-changing-match-data' and set it to nil.
  -     (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
  -     start and end of the match, instead of using values in search_regs.
  +2011-04-02  Juanma Barranquero  <lekktu@gmail.com>
   
  -2007-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * xdisp.c (display_count_lines): Remove parameter `start',
  +     unused since 1998-01-01T02:27:27Z!rms@gnu.org.  All callers changed.
  +     (get_char_face_and_encoding): Remove parameter `multibyte_p',
  +     unused since 2008-05-14T01:40:23Z!handa@m17n.org.  All callers changed.
  +     (fill_stretch_glyph_string): Remove parameters `row' and `area',
  +     unused at least since Kim's GUI unification at 2003-03-16T20:45:46Z!storm@cua.dk
  +     and thereabouts.  All callers changed.
  +     (get_per_char_metric): Remove parameter `f', unused since
  +     2008-05-14T01:40:23Z!handa@m17n.org.  All callers changed.
   
  -     * minibuf.c (Fcompleting_read): New value `confirm-only'
  -     for `require-match'.
  +2011-04-02  Jim Meyering  <meyering@redhat.com>
   
  -2007-06-28  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     do not dereference NULL upon failed strdup
  +     * nsfont.m (ns_descriptor_to_entity): Use xstrdup, not strdup.
  +     (ns_get_family): Likewise.
  +
  +2011-04-02  Juanma Barranquero  <lekktu@gmail.com>
   
  -     * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
  -     part of the 2007-06-27 change to syms_of_fileio.
  +     * eval.c (unwind_to_catch) [DEBUG_GCPRO]: Remove redundant assignment.
  +
  +2011-04-02  Jan Djärv  <jan.h.d@swipnet.se>
   
  -2007-06-28  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  +     * nsterm.m (ns_update_auto_hide_menu_bar): Only for OSX 10.6 or
  +     later (Bug#8403).
   
  -     * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
  -     Check WINDOWP before using XWINDOW.  Consolidate return statements.
  +2011-04-01  Stefan Monnier  <monnier@iro.umontreal.ca>
  +
  +     Add lexical binding.
   
  -2007-06-27  Richard Stallman  <rms@gnu.org>
  +     * window.c (Ftemp_output_buffer_show): New fun.
  +     (Fsave_window_excursion):
  +     * print.c (Fwith_output_to_temp_buffer): Move to subr.el.
   
  -     * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
  +     * 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'.
   
  -2007-06-27  Juanma Barranquero  <lekktu@gmail.com>
  +     * lisp.h (struct Lisp_Symbol): New field `declared_special'.
   
  -     * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
  +     * keyboard.c (eval_dyn): New fun.
  +     (menu_item_eval_property): Use it.
   
  -2007-06-26  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  +     * image.c (parse_image_spec): Use Ffunctionp.
   
  -     * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
  -     (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
  -     (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
  -     (_free_internal, memalign): Use them.
  -     (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
  -     Initialize to PTHREAD_MUTEX_INITIALIZER.
  -     (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
  -     (morecore_nolock): Rename from morecore.  All uses changed.
  -     Use only nolock versions of internal allocation functions.
  -     (_malloc_internal_nolock, _realloc_internal_nolock)
  -     (_free_internal_nolock): New functions created from
  -     _malloc_internal, _realloc_internal, and _free_internal.
  -     (_malloc_internal, _realloc_internal, _free_internal): Use them.
  -     Copy hook value to automatic variable before its use.
  -     (memalign): Copy hook value to automatic variable before its use.
  +     * fns.c (concat, mapcar1): Accept byte-code-functions.
   
  -2007-06-26  Kenichi Handa  <handa@m17n.org>
  +     * 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.
   
  -     * coding.c (Ffind_operation_coding_system): Docstring improved.
  -     (syms_of_coding): Docstring of `file-coding-system-alist' improved.
  +     * doc.c (Fdocumentation, store_function_docstring):
  +     * data.c (Finteractive_form): Handle closures.
   
  -2007-06-25  David Kastrup  <dak@gnu.org>
  +     * callint.c (Fcall_interactively): Preserve lexical-binding mode for
  +     interactive spec.
   
  -     * keymap.c (Fcurrent_active_maps): Add `position' argument.
  -     (Fwhere_is_internal): Adjust call to `current-active-maps' to
  -     cater for additional parameter.
  +     * 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.
   
  -     * keymap.h: Adjust number of parameters to `current-active-maps'.
  +     * buffer.c (defvar_per_buffer): Set new `declared_special' field.
   
  -     * doc.c (Fsubstitute_command_keys): Adjust call of
  -     `current-active-maps'.
  +     * alloc.c (Fmake_symbol): Init new `declared_special' field.
   
  -2007-06-25  David Kastrup  <dak@gnu.org>
  +2011-03-31  Juanma Barranquero  <lekktu@gmail.com>
   
  -     * callint.c (Fcall_interactively): Make the parsing of interactive
  -     specs somewhat more readable.
  +     * xdisp.c (redisplay_internal): Fix prototype.
   
  -2007-06-23  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  +2011-03-31  Eli Zaretskii  <eliz@gnu.org>
   
  -     * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
  -     to scroll bar gap also when bitmap fills fringe.  Draw only foreground
  -     if extended background has already been filled.
  +     * 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)
   
  -2007-06-22  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  +     (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.
   
  -     * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
  -     (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
  +2011-03-31  Juanma Barranquero  <lekktu@gmail.com>
   
  -     * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
  -     Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
  -     in #if 0 as it is not compatible with y-or-n-p-with-timeout.
  -     (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
  -     [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
  -     instead of QuitAppModalLoopForWindow.  Consolidate QuitEventLoop calls.
  -     (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
  -     [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
  -     Run timers during dialog popup.
  -     (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
  +     * 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.
   
  -2007-06-21  Jason Rumney  <jasonr@gnu.org>
  +     * indent.c (Fvertical_motion):
  +     * window.c (window_scroll_pixel_based, Frecenter):
  +     Don't pass `need_y_p' to `move_it_by_lines'.
   
  -     * image.c (convert_mono_to_color_image): Swap fore and background.
  +2011-03-30  Stefan Monnier  <monnier@iro.umontreal.ca>
   
  -2007-06-20  Jason Rumney  <jasonr@gnu.org>
  +     * 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.
   
  -     * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
  -     (w32_free_bdf_font): Unmap memory not handle.
  +     * bytecode.c (Fbyte_code): CAR and CDR can GC.
   
  -2007-06-20  Sam Steingold  <sds@gnu.org>
  +2011-03-30  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
   
  -     * gmalloc.c (__morecore): Fix the declaration to comply with the
  -     definition.
  +     * keyboard.c (Fexecute_extended_command): Do log the "suggest key
  +     binding" message (bug#7967).
   
  -2007-06-20  Juanma Barranquero  <lekktu@gmail.com>
  +2011-03-30  Paul Eggert  <eggert@cs.ucla.edu>
   
  -     * w32term.c (w32_delete_display): Remove leftover declaration.
  -     (w32_define_cursor, w32_initialize): Make static.
  +     Fix more problems found by GCC 4.6.0's static checks.
   
  -     * w32.c (_wsa_errlist): Fix typo in error message.
  -     (init_environment): Ignore any environment variable from the
  -     registry having a null value.
  +     * unexelf.c (unexec) [! (defined _SYSTYPE_SYSV || defined __sgi)]:
  +     Remove unused local var.
   
  -2007-06-20  Glenn Morris  <rgm@gnu.org>
  +     * editfns.c (Fmessage_box): Remove unused local var.
   
  -     * Makefile.in (LIBGIF): Default to -lgif.
  +     * 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.
   
  -2007-06-17  Jason Rumney  <jasonr@gnu.org>
  +     * callproc.c (Fcall_process, Fcall_process_region): Use SAFE_ALLOCA
  +     instead of alloca (Bug#8344).
   
  -     * w32menu.c (add_menu_item): Don't use multibyte string functions on
  -     unicode strings.
  +     * eval.c (Fbacktrace): Don't assume nargs fits in int.
  +     (Fbacktrace_frame): Don't assume nframes fits in int.
   
  -2007-06-16  Juanma Barranquero  <lekktu@gmail.com>
  +     * syntax.c (scan_sexps_forward): Avoid pointer wraparound.
   
  -     * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
  -     Fix typo in docstring.
  +     * xterm.c (x_make_frame_visible, same_x_server): Redo to avoid overflow
  +     concerns.
   
  -2007-06-16  Eli Zaretskii  <eliz@gnu.org>
  +     * term.c (produce_glyphless_glyph): Remove unnecessary test.
   
  -     * w32menu.c (add_menu_item): Escape `&' characters in menu items
  -     and their keybindings.
  +     * cm.c (calccost): Turn while-do into do-while, for clarity.
   
  -2007-06-15  Chong Yidong  <cyd@stupidchicken.com>
  +     * 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.
   
  -     * composite.c (update_compositions): Fix last fix.
  +     * image.c (tiff_load): Fix off-by-one image count (Bug#8336).
   
  -2007-06-14  Jason Rumney  <jasonr@gnu.org>
  +     * xselect.c (x_check_property_data): Return correct size (Bug#8335).
   
  -     * w32.c (get_process_times_fn): New function pointer.
  -     (globals_of_w32): Intialize it if present in kernel32.dll.
  -     (w32_get_internal_run_time): New function.
  +     * chartab.c (sub_char_table_ref_and_range): Redo for slight
  +     efficiency gain, and to bypass a gcc -Wstrict-overflow warning.
   
  -     * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
  +     * 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.
   
  -2007-06-14  Kenichi Handa  <handa@etlken.m17n.org>
  +     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.
   
  -     * composite.c (update_compositions): Check the validness of
  -     compositions.
  +     * 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.
   
  -2007-06-14  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  +2011-03-28  Juanma Barranquero  <lekktu@gmail.com>
   
  -     * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
  -     (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
  +     * coding.c (encode_designation_at_bol): Remove parameter `charbuf_end',
  +     unused since 2002-03-01T01:17:24Z!handa@m17n.org and 2008-02-01T16:01:31Z!miles@gnu.org.
  +     All callers changed.
   
  -     * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
  -     (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
  +     * lisp.h (multibyte_char_to_unibyte):
  +     * character.c (multibyte_char_to_unibyte): Remove parameter `rev_tbl',
  +     unused since 2002-03-01T01:16:34Z!handa@m17n.org and 2008-02-01T16:01:31Z!miles@gnu.org.
  +     * character.h (CHAR_TO_BYTE8):
  +     * cmds.c (internal_self_insert):
  +     * editfns.c (general_insert_function):
  +     * keymap.c (push_key_description):
  +     * search.c (Freplace_match):
  +     * xdisp.c (message_dolog, set_message_1): All callers changed.
   
  -     * macgui.h (USE_MAC_TOOLBAR): New define.
  +2011-03-28  Stefan Monnier  <monnier@iro.umontreal.ca>
   
  -     * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
  -     Return immediately unless popup is activated.
  +     * keyboard.c (safe_run_hook_funcall): New function.
  +     (safe_run_hooks_1, safe_run_hooks_error, safe_run_hooks): On error,
  +     don't set the hook to nil, but remove the offending function instead.
  +     (Qcommand_hook_internal): Remove, unused.
  +     (syms_of_keyboard): Don't initialize Qcommand_hook_internal nor define
  +     Vcommand_hook_internal.
   
  -     * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
  -     background to scroll bar gap.
  -     (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
  -     (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
  -     scroll bars on frame edge.  Check fringe background extension.
  -     Don't clear extended fringe background area.
  -     (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
  -     (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
  -     (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
  -     [USE_MAC_TOOLBAR]: New macros.
  -     (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
  -     (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
  -     (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
  -     (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
  -     [USE_MAC_TOOLBAR]: New functions.
  -     (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
  -     manually if previous repositioning has failed.
  -     (mac_handle_keyboard_event): Use precomputed event kind.
  -     (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
  -     as tool bar item click.  Handle mouse movement over tool bar items.
  +     * eval.c (enum run_hooks_condition): Remove.
  +     (funcall_nil, funcall_not): New functions.
  +     (run_hook_with_args): Call each function through a `funcall' argument.
  +     Remove `cond' argument, now redundant.
  +     (Frun_hooks, Frun_hook_with_args, Frun_hook_with_args_until_success)
  +     (Frun_hook_with_args_until_failure): Adjust accordingly.
  +     (run_hook_wrapped_funcall, Frun_hook_wrapped): New functions.
   
  -     * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
  -     toolbar_win_gravity.
  -     (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
  -     (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
  -     Add externs.
  +2011-03-28  Juanma Barranquero  <lekktu@gmail.com>
   
  -     * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
  -     [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
  +     * dispextern.h (string_buffer_position): Remove declaration.
   
  -2007-06-14  Chong Yidong  <cyd@stupidchicken.com>
  +     * print.c (strout): Remove parameter `multibyte', unused since
  +     1999-08-21T19:30:21Z!gerd@gnu.org.  All callers changed.
   
  -     * image.c (search_image_cache): Remove unused variable.
  +     * search.c (boyer_moore): Remove parameters `len', `pos' and `lim',
  +     never used since function introduction in 1998-02-08T21:33:56Z!rms@gnu.org.
  +     All callers changed.
   
  -2007-06-13  Chong Yidong  <cyd@stupidchicken.com>
  +     * w32.c (_wsa_errlist): Use braces for struct initializers.
   
  -     * xfns.c, xmenu.c: Link to xaw3d if available.
  +     * xdisp.c (string_buffer_position_lim): Remove parameter `w',
  +     never used since function introduction in 2001-03-09T18:41:50Z!gerd@gnu.org.
  +     All callers changed.
  +     (string_buffer_position): Likewise.  Also, make static (it's never
  +     used outside xdisp.c).
  +     (cursor_row_p): Remove parameter `w', unused since
  +     2000-10-17T16:08:57Z!gerd@gnu.org.  All callers changed.
  +     (decode_mode_spec): Remove parameter `precision', introduced during
  +     Gerd Moellmann's rewrite at 1999-07-21T21:43:52Z!gerd@gnu.org, but never used.
  +     All callers changed.
   
  -2007-06-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  +2011-03-27  Jan Djärv  <jan.h.d@swipnet.se>
   
  -     * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
  -     frame_foreground and frame_background.
  +     * nsterm.m (syms_of_nsterm): Use doc: for ns-auto-hide-menu-bar.
   
  -     * image.c (lookup_image): Save frame foreground and background colors.
  -     (search_image_cache): Check if saved and current frame colors match.
  +2011-03-27  Anders Lindgren  <andlind@gmail.com>
   
  -2007-06-12  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * nsterm.m (ns_menu_bar_is_hidden): New variable.
  +     (ns_constrain_all_frames, ns_menu_bar_should_be_hidden)
  +     (ns_update_auto_hide_menu_bar): New functions.
  +     (ns_update_begin): Call ns_update_auto_hide_menu_bar.
  +     (applicationDidBecomeActive): Call ns_update_auto_hide_menu_bar and
  +     ns_constrain_all_frames.
  +     (constrainFrameRect): Return at once if ns_menu_bar_should_be_hidden.
  +     (syms_of_nsterm): DEFVAR ns-auto-hide-menu-bar, init to Qnil.
   
  -     * regex.c (regex_compile): Remove the `regnum' counter.
  -     Use bufp->re_nsub instead.  Add support for \(?N:RE\).
  +2011-03-27  Jan Djärv  <jan.h.d@swipnet.se>
   
  -2007-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * nsmenu.m (runDialogAt): Remove argument to timer_check.
   
  -     * term.c: Include intervals.h to declare Fget_text_property.
  +2011-03-27  Glenn Morris  <rgm@gnu.org>
   
  -2007-06-10  Jason Rumney  <jasonr@gnu.org>
  +     * syssignal.h: Replace RETSIGTYPE with void.
  +     * atimer.c, data.c, dispnew.c, emacs.c, floatfns.c, keyboard.c:
  +     * keyboard.h, lisp.h, process.c, sysdep.c, xterm.c:
  +     Replace SIGTYPE with void everywhere.
  +     * s/usg5-4-common.h (SIGTYPE): Remove definition.
  +     * s/template.h (SIGTYPE): Remove commented out definition.
   
  -     * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
  +2011-03-26  Eli Zaretskii  <eliz@gnu.org>
   
  -2007-06-08  Juanma Barranquero  <lekktu@gmail.com>
  +     * xdisp.c (redisplay_window): Don't check buffer's clip_changed
  +     flag as a prerequisite for invoking try_scrolling.  (Bug#6671)
   
  -     * callint.c (Fcall_interactively):
  -     * editfns.c (Fdelete_and_extract_region):
  -     * fileio.c (Fread_file_name):
  -     * fns.c (Fmapconcat):
  -     * keyboard.c (cmd_error_internal):
  -     * keymap.c (Fkey_description):
  -     * lread.c (openp):
  -     * minibuf.c (read_minibuf):
  -     * search.c (wordify):
  -     * sunfns.c (sel_read):
  -     * xdisp.c (Fformat_mode_line, syms_of_xdisp):
  -     * xfns.c (x_default_scroll_bar_color_parameter):
  -     * xmenu.c (menu_help_callback):
  -     * xselect.c (Fx_get_atom_name):
  -     * xterm.c (x_term_init): Use empty_unibyte_string.
  -
  -2007-06-08  Dmitry Antipov  <dmantipov@yandex.ru>  (tiny change)
  -
  -     * alloc.c (init_strings): Initialize canonical empty strings.
  -     (make_uninit_string, make_uninit_multibyte_string): Return appropriate
  -     canonical empty string when the requested size is 0.
  -
  -     * emacs.c (empty_unibyte_string): Rename from empty_string.
  -     (empty_multibyte_string): New canonical empty string.
  -     (syms_of_emacs): Don't initialize empty_string.
  -
  -     * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
  -     string, if appropriate.
  -     (empty_unibyte_string, empty_multibyte_string): New externs.
  -     (empty_string): Remove extern.
  -
  -     * lread.c (syms_of_lread): Use empty_unibyte_string.
  -
  -2007-06-07  Jason Rumney  <jasonr@gnu.org>
  -
  -     * s/ms-w32.h: Don't define HAVE_TZNAME.
  -
  -     * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
  -
  -2007-06-07  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
  -
  -     * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
  -     (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
  -
  -     * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
  -     Don't call next handler.
  -     [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
  -     Remove argument.  Install handler to application.
  -     (set_frame_menubar): Don't change deep_p.
  -     (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
  -     FRAME_OUTER_TO_INNER_DIFF_Y.
  -     (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
  -     (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
  -     [HAVE_DIALOGS]: New macros.
  -     [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
  -     Use them.
  -     (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
  -
  -     * macselect.c [MAC_OSX] (install_service_handler): Rename from
  -     init_service_handler.  All callers changed.  Return OSStatus value.
  -
  -     * macterm.c (mac_begin_cg_clip): New arg F.  Call SetPortWindowPort.
  -     All callers changed so as not to call SetPortWindowPort.
  -     (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
  -     (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
  -     mac_draw_string_common.
  -     (mac_draw_image_string_qd): Likewise.
  -     (mac_draw_string_common): Use them.  Add INLINE.
  -     (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
  -     Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
  -     GetGlobalMouse.
  -     (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
  -     and FRAME_OUTER_TO_INNER_DIFF_Y.
  -     [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
  -     [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
  -     (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
  -     repositioning window to mac_handle_window_event.
  -     (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
  -     saving window location to mac_handle_window_event
  -     [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
  -     (install_menu_target_item_handler): Remove argument in extern.
  -     [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
  -     Also accept command events.
  -     (do_keystroke): New function created from XTread_socket.
  -     (init_command_handler): Remove functions.
  -     [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
  -     and save window location by kEventWindowShowing and kEventWindowHiding
  -     handlers here.  Don't call next handler for window state change and
  -     focus events.
  -     (mac_handle_application_event, mac_handle_keyboard_event)
  -     [TARGET_API_MAC_CARBON]: New functions.
  -     (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
  -     kEventWindowShowing and kEventWindowHiding events.  Move installation
  -     of mouse, font, text input and menu target item handlers to
  -     install_application_handler.
  -     (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
  -     (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
  -     New function.
  -     (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
  -     Register it.
  -     (XTread_socket) [TARGET_API_MAC_CARBON]:
  -     Consolidate SendEventToEventTarget calls.
  -     Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
  -     Move application activation handler to mac_handle_application_event.
  -     Move keyboard handler to mac_handle_keyboard_event.
  -     (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
  -     (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
  -     init_command_handler.  Call install_application_handler.
  -
  -     * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
  -     (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
  -
  -2007-06-07  Glenn Morris  <rgm@gnu.org>
  -
  -     * emacs.c (main): Use `emacs-copyright' in --version output.
  -
  -2007-06-06  Chong Yidong  <cyd@stupidchicken.com>
  -
  -     * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
  -
  -2007-06-06  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  -
  -     * macfns.c (mac_window): Replace WindowPtr with WindowRef.
  -
  -     * macgui.h: Replace WindowPtr with WindowRef.
  -
  -     * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
  -     GetMenuRef, respectively.  Replace WindowPtr with WindowRef.
  -     Replace ControlHandle with ControlRef.
  -     (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
  -
  -     * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
  -     GetMenuRef, respectively.  Replace WindowPtr with WindowRef.
  -     Replace ControlHandle with ControlRef.
  -     (USE_CARBON_EVENTS): Remove.  Use TARGET_API_MAC_CARBON instead.
  -     [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
  -
  -     * macterm.h (struct scroll_bar): Rename member control_handle_low
  -     and control_handle_high to control_ref_low and control_ref_high.
  -     All uses changed.
  -     (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
  -     SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
  -     respectively.  All uses changed.
  -     (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
  -     (install_window_handler, remove_window_handler): Replace WindowPtr
  -     with WindowRef in externs.
  +2011-03-26  Juanma Barranquero  <lekktu@gmail.com>
   
  -2007-06-05  Juanma Barranquero  <lekktu@gmail.com>
  +     * w32.c (read_unc_volume): Use parameter `henum', instead of
  +     global variable `wget_enum_handle'.
   
  -     * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
  +     * keymap.c (describe_vector): Remove parameters `indices' and
  +     `char_table_depth', unused since 2002-03-01T01:43:26Z!handa@m17n.org.
  +     (describe_map, Fdescribe_vector): Adjust calls to `describe_vector'.
   
  -2007-06-03  Nick Roberts  <nickrob@snap.net.nz>
  +     * keyboard.h (timer_check, show_help_echo): Remove unused parameters.
   
  -     * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
  +     * keyboard.c (timer_check): Remove parameter `do_it_now',
  +     unused since 1996-04-12T06:01:29Z!rms@gnu.org.
  +     (show_help_echo): Remove parameter `ok_to_overwrite_keystroke_echo',
  +     unused since 2008-04-19T19:30:53Z!monnier@iro.umontreal.ca.
   
  -     * frame.c (Fmouse_position, Fmouse_pixel_position):
  -     Condition on HAVE_GPM too.
  +     * keyboard.c (read_char):
  +     * w32menu.c (w32_menu_display_help):
  +     * xmenu.c (show_help_event, menu_help_callback):
  +     Adjust calls to `show_help_echo'.
   
  -     * term.c (term_mouse_highlight): Remove unused variables.
  -     (Fterm_open_connection): Set gpm_zerobased to 1.
  -     (term_mouse_movement, term_mouse_click, handle_one_term_event):
  -     Use zero based co-ordinates.
  -     (handle_one_term_event): Report a drag as mouse movement too.
  +     * gtkutil.c (xg_maybe_add_timer):
  +     * keyboard.c (readable_events):
  +     * process.c (wait_reading_process_output):
  +     * xmenu.c (x_menu_wait_for_event): Adjust calls to `timer_check'.
   
  -     * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
  +     * insdel.c (adjust_markers_gap_motion):
  +     Remove; no-op since 1998-01-02T21:29:48Z!rms@gnu.org.
  +     (gap_left, gap_right): Don't call it.
   
  -2007-06-03  Chong Yidong  <cyd@stupidchicken.com>
  +2011-03-25  Chong Yidong  <cyd@stupidchicken.com>
   
  -     * image.c (search_image_cache): New function.  Require background
  -     color match if background color is unspecified in the image spec.
  -     (uncache_image, lookup_image): Use it.
  +     * xdisp.c (handle_fontified_prop): Discard changes to clip_changed
  +     incurred during fontification.
   
  -2007-06-01  Juanma Barranquero  <lekktu@gmail.com>
  +2011-03-25  Juanma Barranquero  <lekktu@gmail.com>
   
  -     * window.c (Fshrink_window): Reflow docstring.
  +     * buffer.c (defvar_per_buffer): Remove unused parameter `doc'.
  +     (DEFVAR_PER_BUFFER): Don't pass it.
   
  -2007-06-02  Chong Yidong  <cyd@stupidchicken.com>
  +     * dispnew.c (row_equal_p, add_row_entry): Remove unused parameter `w'.
  +     (scrolling_window): Don't pass it.
   
  -     * Version 22.1 released.
  +2011-03-25  Juanma Barranquero  <lekktu@gmail.com>
   
  -2007-06-01  Richard Stallman  <rms@gnu.org>
  +     * dispextern.h (glyph_matric): Use #if GLYPH_DEBUG, not #ifdef.
   
  -     * xfns.c (x_encode_text): Add GCPRO.
  +     * fileio.c (check_executable) [DOS_NT]: Remove unused variables `len'
  +     and `suffix'.
  +     (Fset_file_selinux_context) [HAVE_LIBSELINUX]: Move here declaration
  +     of variables specific to SELinux and computation of `encoded_absname'.
   
  -2007-06-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  +     * image.c (XPutPixel): Remove unused variable `height'.
   
  -     * xfns.c (x_set_name_internal): Save encoded name before
  -     x_encode_text in case string data is relocated.
  +     * keyboard.c (make_lispy_event): Remove unused variable `hpos'.
   
  -2007-05-31  Richard Stallman  <rms@gnu.org>
  +     * unexw32.c (get_section_info): Remove unused variable `section'.
   
  -     * buffer.c (syms_of_buffer): Doc fix.
  +     * w32.c (stat): Remove unused variables `drive_root' and `devtype'.
  +     (system_process_attributes): Remove unused variable `sess'.
  +     (sys_read): Remove unused variable `err'.
   
  -2007-05-30  Nick Roberts  <nickrob@snap.net.nz>
  +     * w32fns.c (top): Wrap variables with #if GLYPH_DEBUG, not #ifdef.
  +     (w32_wnd_proc): Remove unused variable `isdead'.
  +     (unwind_create_frame): Use #if GLYPH_DEBUG, not #ifdef.
  +     (Fx_server_max_request_size): Remove unused variable `dpyinfo'.
  +     (x_create_tip_frame): Remove unused variable `tem'.
   
  -     * sysdep.c (init_sys_modes): Add rather than replace with
  -     O_NONBLOCK.
  +     * w32inevt.c (w32_console_read_socket):
  +     Remove unused variable `no_events'.
   
  -     * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
  -     term_mouse_moveto.
  +     * w32term.c (x_draw_composite_glyph_string_foreground):
  +     Remove unused variable `width'.
   
  -     * termhooks.h (term_mouse_moveto): New extern.
  +2011-03-24  Juanma Barranquero  <lekktu@gmail.com>
   
  -     * term.c (mouse_face_window): Rename...
  -     (Qmouse_face_window): ...to this.
  -     (term_show_mouse_face, term_clear_mouse_face)
  -     (term_mouse_highlight): Use Qmouse_face_window.
  -     (term_mouse_moveto): New function.
  -     (term_mouse_position): Make it work.
  -     (syms_of_term): Uncomment assignment to mouse_position_hook.
  -     Staticpro Qmouse_face_window.
  +     * w32term.c (x_set_glyph_string_clipping):
  +     Don't pass uninitialized region to CombineRgn.
   
  -2007-05-28  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  +2011-03-23  Juanma Barranquero  <lekktu@gmail.com>
   
  -     * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
  -     around current_column call.
  +     * w32fns.c (x_set_menu_bar_lines): Remove unused variable `olines'.
  +     (w32_wnd_proc): Pass NULL to Windows API, not uninitialized buffer.
  +     (Fx_close_connection): Remove unused variable `i'.
   
  -2007-05-26  Dan Nicolaescu  <dann@ics.uci.edu>
  +     * w32font.c (w32font_draw): Return number of glyphs.
  +     (w32font_open_internal): Remove unused variable `i'.
  +     (w32font_driver): Add missing initializer.
   
  -     * xfaces.c (syms_of_xfaces): Delete stray semicolon.
  -     * xdisp.c (next_element_from_buffer):
  -     * window.c (delete_window):
  -     * term.c (term_mouse_highlight):
  -     * msdos.c (getdefdir):
  -     * macterm.c (mac_create_bitmap_from_bitmap_data)
  -     (init_font_name_table):
  -     * fns.c (Fsxhash):
  -     * data.c (Fmake_local_variable):
  -     * ccl.c (ccl_driver): Likewise.
  +     * w32menu.c (utf8to16): Remove unused variable `utf16'.
  +     (fill_in_menu): Remove unused variable `items_added'.
   
  -2007-05-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  +     * w32term.c (last_mouse_press_frame): Remove static global variable.
  +     (w32_clip_to_row): Remove unused variable `f'.
  +     (x_delete_terminal): Remove unused variable `i'.
   
  -     * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
  -     Call mac_wakeup_from_rne on window size change.
  +     * w32uniscribe.c (uniscribe_shape): Remove unused variable `nclusters'.
  +     (NOTHING): Remove unused static global variable.
  +     (uniscribe_check_otf): Remove unused variable `table'.
  +     (uniscribe_font_driver): Add missing initializers.
   
  -2007-05-25  Chong Yidong  <cyd@stupidchicken.com>
  +2011-03-23  Julien Danjou  <julien@danjou.info>
   
  -     * image.c (uncache_image): Fix typo.
  +     * term.c (Fsuspend_tty, Fresume_tty):
  +     * minibuf.c (read_minibuf, run_exit_minibuf_hook):
  +     * window.c (temp_output_buffer_show):
  +     * insdel.c (signal_before_change):
  +     * frame.c (Fhandle_switch_frame):
  +     * fileio.c (Fdo_auto_save):
  +     * emacs.c (Fkill_emacs):
  +     * editfns.c (save_excursion_restore):
  +     * cmds.c (internal_self_insert):
  +     * callint.c (Fcall_interactively):
  +     * buffer.c (Fkill_all_local_variables):
  +     * keyboard.c (Fcommand_execute, Fsuspend_emacs, safe_run_hooks_1):
  +     Use Frun_hooks.
  +     (command_loop_1): Use Frun_hooks.  Call safe_run_hooks
  +     unconditionnaly since it does the check itself.
  +
  +2011-03-23  Paul Eggert  <eggert@cs.ucla.edu>
  +
  +     Fix more problems found by GCC 4.5.2's static checks.
  +
  +     * coding.c (encode_coding_raw_text): Avoid unnecessary test
  +     the first time through the loop, since we know p0 < p1 then.
  +     This also avoids a gcc -Wstrict-overflow warning.
  +
  +     * lisp.h (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Avoid 'int' overflow
  +     leading to a memory leak, possible in functions like
  +     load_charset_map_from_file that can allocate an unbounded number
  +     of objects (Bug#8318).
  +
  +     * xmenu.c (set_frame_menubar): Use EMACS_UINT, not int, for indexes
  +     that could (at least in theory) be that large.
  +
  +     * xdisp.c (message_log_check_duplicate): Return unsigned long, not int.
  +     This is less likely to overflow, and avoids undefined behavior if
  +     overflow does occur.  All callers changed.  Use strtoul to scan
  +     for the unsigned long integer.
  +     (pint2hrstr): Simplify and tune code slightly.
  +     This also avoids a (bogus) GCC warning with gcc -Wstrict-overflow.
  +
  +     * scroll.c (do_scrolling): Work around GCC bug 48228.
  +     See <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48228>.
  +
  +     * frame.c (Fmodify_frame_parameters): Simplify loop counter.
  +     This also avoids a warning with gcc -Wstrict-overflow.
  +     (validate_x_resource_name): Simplify count usage.
  +     This also avoids a warning with gcc -Wstrict-overflow.
  +
  +     * fileio.c (Fcopy_file): Report error if fchown or fchmod
  +     fail (Bug#8306).
  +
  +     * emacs.c (Fdaemon_initialized): Do not ignore I/O errors (Bug#8303).
  +
  +     * process.c (Fmake_network_process): Use socklen_t, not int,
  +     where POSIX says socklen_t is required in portable programs.
  +     This fixes a porting bug on hosts like 64-bit HP-UX, where
  +     socklen_t is wider than int (Bug#8277).
  +     (Fmake_network_process, server_accept_connection):
  +     (wait_reading_process_output, read_process_output):
  +     Likewise.
   
  -2007-05-23  Johannes Weiner  <hannes@saeurebad.de>  (tiny change)
  +     * process.c: Rename or move locals to avoid shadowing.
  +     (list_processes_1, Fmake_network_process):
  +     (read_process_output_error_handler, exec_sentinel_error_handler):
  +     Rename or move locals.
  +     (Fmake_network_process): Define label "retry_connect" only if needed.
  +     (Fnetwork_interface_info): Fix pointer signedness.
  +     (process_send_signal): Add cast to avoid pointer signedness problem.
  +     (FIRST_PROC_DESC, IF_NON_BLOCKING_CONNECT): Remove unused macros.
  +     (create_process): Use 'volatile' to avoid vfork clobbering (Bug#8298).
   
  -     * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
  +     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.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.
  +     (tparm): Make 1st arg a const pointer in decl.  Put it at top level.
  +     (tparam): Adjust signature to match interface in tparam.h;
  +     this removes some undefined behavior.  Check that outstring and len
  +     are zero, which they always are with Emacs.
  +     * tparam.h (PC, BC, UP): New extern decls.
   
  -2007-05-22  Richard Stallman  <rms@gnu.org>
  +     * xftfont.c (xftfont_shape): Now static, and defined only if needed.
  +     (xftfont_open): Rename locals to avoid shadowing.
   
  -     * xterm.c (x_connection_closed): Remove NO_RETURN.
  +     * ftfont.c (ftfont_resolve_generic_family): Fix pointer signedness.
  +     (ftfont_otf_capability, ftfont_shape): Omit decls if not needed.
  +     (OTF_TAG_SYM): Omit macro if not needed.
  +     (ftfont_list): Remove unused local.
  +     (get_adstyle_property, ftfont_pattern_entity):
  +     (ftfont_lookup_cache, ftfont_open, ftfont_anchor_point):
  +     Rename locals to avoid shadowing.
   
  -2007-05-22  Martin Rudalics  <rudalics@gmx.at>
  +     * xfont.c (xfont_list_family): Mark var as initialized.
   
  -     * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
  +     * xml.c (make_dom): Now static.
   
  -2007-05-21  Chong Yidong  <cyd@stupidchicken.com>
  +     * composite.c (composition_compute_stop_pos): Rename local to
  +     avoid shadowing.
  +     (composition_reseat_it): Remove unused locals.
  +     (find_automatic_composition, composition_adjust_point): Likewise.
  +     (composition_update_it): Mark var as initialized.
  +     (find_automatic_composition): Mark vars as initialized,
  +     with a FIXME (Bug#8290).
   
  -     * image.c (uncache_image): New function.
  -     (Fimage_refresh): New function.
  +     character.h: Rename locals to avoid shadowing.
  +     * character.h (PREV_CHAR_BOUNDARY, FETCH_STRING_CHAR_ADVANCE):
  +     (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE, FETCH_CHAR_ADVANCE):
  +     (FETCH_CHAR_ADVANCE_NO_CHECK, INC_POS, DEC_POS, BUF_INC_POS):
  +     (BUF_DEC_POS): Be more systematic about renaming local temporaries
  +     to avoid shadowing.
   
  -2007-05-20  Jan Djärv  <jan.h.d@swipnet.se>
  +     * textprop.c (property_change_between_p): Remove; unused.
   
  -     * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
  +     * intervals.c (interval_start_pos): Now static.
   
  -2007-05-20  Nick Roberts  <nickrob@snap.net.nz>
  +     * intervals.h (CHECK_TOTAL_LENGTH): Avoid empty "else".
   
  -     * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
  -     * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
  +     * atimer.c (start_atimer, append_atimer_lists, set_alarm):
  +     Rename locals to avoid shadowing.
   
  -2007-05-20  Nick Roberts  <nickrob@snap.net.nz>
  +     * sound.c (wav_play, au_play, Fplay_sound_internal):
  +     Fix pointer signedness.
  +     (alsa_choose_format): Remove unused local var.
  +     (wav_play): Initialize a variable to 0, to prevent undefined
  +     behavior (Bug#8278).
   
  -     * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
  -     conditional on [HAVE_GPM_H].
  +     * region-cache.c (insert_cache_boundary): Redo var to avoid shadowing.
   
  -2007-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * region-cache.h (pp_cache): New decl, for gcc -Wmissing-prototypes.
   
  -     * syntax.c (skip_chars): Update syntax-table only after we checked that
  -     the new location is valid.
  +     * callproc.c (Fcall_process): Use 'volatile' to avoid vfork
  +     clobbering (Bug#8298).
  +     * sysdep.c (sys_subshell): Likewise.
  +     Previously, the sys_subshell 'volatile' was incorrectly IF_LINTted out.
   
  -2007-05-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  +     * lisp.h (child_setup): Now NO_RETURN unless DOS_NT.
  +     This should get cleaned up, so that child_setup has the
  +     same signature on all platforms.
   
  -     * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
  -     mac_get_window_bounds.
  +     * callproc.c (call_process_cleanup): Now static.
  +     (relocate_fd): Rename locals to avoid shadowing.
   
  -2007-05-20  Nick Roberts  <nickrob@snap.net.nz>
  +2011-03-22  Chong Yidong  <cyd@stupidchicken.com>
   
  -     * Makefile.in (LIBGPM): Allow it to be set from configure.
  -     If set then link Emacs with it.
  +     * xterm.c (x_clear_frame): Remove XClearWindow call.  This appears
  +     not to be necessary, and produces flickering.
   
  -     * config.in: Regenerate.
  +2011-03-20  Glenn Morris  <rgm@gnu.org>
   
  -     * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
  -     New externs.
  +     * config.in: Remove file.
   
  -     * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
  -     Include gpm.h.
  -     (handle_one_term_event, term_gpm): New externs.
  +2011-03-20  Juanma Barranquero  <lekktu@gmail.com>
   
  -     * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
  -     and allow it to be interrupted by SIGIO.
  +     * minibuf.c (Vcompleting_read_function): Don't declare, global variables
  +     are now in src/globals.h.
  +     (syms_of_minibuf): Remove spurious & from previous change.
   
  -     * process.c (gpm_wait_mask, max_gpm_desc): New variables.
  -     (wait_reading_process_output): Wait on gpm_fd too.
  -     (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
  -     (add_gpm_wait_descriptor_called_flag): New variable.
  -     (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
  +2011-03-20  Leo  <sdl.web@gmail.com>
   
  -     * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
  -     (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
  -     (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
  -     Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
  -     (make_lispy_event): Add case GPM_CLICK_EVENT.
  -     (read_avail_input): Handle mouse input.
  +     * minibuf.c (completing-read-function): New variable.
  +     (completing-read-default): Rename from completing-read.
  +     (completing-read): Call completing-read-function.
   
  -     * term.c (write_glyphs_with_face): New function.
  -     [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
  -     (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
  -     (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
  -     (mouse_face_face_id, term_gpm, pos_x, pos_y)
  -     (last_mouse_x, last_mouse_y): New variables.
  -     (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
  -     (term_mouse_highlight, term_mouse_movement, term_mouse_position)
  -     (term_mouse_click, handle_one_term_event, Fterm_open_connection)
  -     (Fterm_close_connection): New functions.
  -     (term_init): Initialise mouse_face_window.
  +2011-03-19  Juanma Barranquero  <lekktu@gmail.com>
   
  -2007-05-19  Chong Yidong  <cyd@stupidchicken.com>
  +     * xfaces.c (Fx_load_color_file):
  +     Read color file from absolute filename (bug#8250).
   
  -     * xdisp.c (redisplay_window): If first window line is a
  -     continuation line, recompute the new window start instead of
  -     recentering.
  +2011-03-19  Juanma Barranquero  <lekktu@gmail.com>
   
  -2007-05-18  Glenn Morris  <rgm@gnu.org>
  +     * makefile.w32-in: Update dependencies.
   
  -     * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
  -     Suggested by Alfred M. Szmidt <ams@gnu.org>.
  +2011-03-17  Eli Zaretskii  <eliz@gnu.org>
   
  -2007-05-17  Glenn Morris  <rgm@gnu.org>
  +     * makefile.w32-in ($(BLD)/unexw32.$(O)): Depend on $(SRC)/unexec.h.
   
  -     * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
  +2011-03-17  Paul Eggert  <eggert@cs.ucla.edu>
   
  -2007-05-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  +     Fix more problems found by GCC 4.5.2's static checks.
   
  -     * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
  -     dead key repeat and up events.
  +     * process.c (make_serial_process_unwind, send_process_trap):
  +     (sigchld_handler): Now static.
   
  -2007-05-14  Chong Yidong  <cyd@stupidchicken.com>
  +     * process.c (allocate_pty): Let PTY_ITERATION declare iteration vars.
  +     That way, the code declares only the vars that it needs.
  +     * s/aix4-2.h (PTY_ITERATION): Declare iteration vars.
  +     * s/cygwin.h (PTY_ITERATION): Likewise.
  +     * s/darwin.h (PTY_ITERATION): Likewise.
  +     * s/gnu-linux.h (PTY_ITERATION): Likewise.
   
  -     * image.c (pbm_load): Check image size for monochrome pbm.
  +     * s/irix6-5.h (PTY_OPEN): Declare stb, to loosen coupling.
  +     * process.c (allocate_pty): Don't declare stb unless it's needed.
   
  -2007-05-13  Chong Yidong  <cyd@stupidchicken.com>
  +     * bytecode.c (MAYBE_GC): Rewrite so as not to use empty "else".
  +     (CONSTANTLIM): Remove; unused.
  +     (METER_CODE, Bscan_buffer, Bread_char, Bset_mark):
  +     Define only if needed.
   
  -     * xterm.c (XTread_socket): Revert last change.
  +     * unexelf.c (unexec): Name an expression,
  +     to avoid gcc -Wbad-function-cast warning.
  +     Use a different way to cause a compilation error if anyone uses
  +     n rather than nn, a way that does not involve shadowing.
  +     (ELF_BSS_SECTION_NAME, OLD_PROGRAM_H): Remove; unused.
   
  -2007-05-12  Chong Yidong  <cyd@stupidchicken.com>
  +     * deps.mk (unexalpha.o): Remove; unused.
   
  -     * image.c (pbm_load): Correctly check image size for greyscale pbm.
  +     New file unexec.h, the (simple) interface for unexec (Bug#8267).
  +     * unexec.h: New file.
  +     * deps.mk (emacs.o, unexaix.o, unexcw.o, unexcoff.o, unexelf.o):
  +     (unexhp9k800.o, unexmacosx.o, unexsol.o, unexw32.o):
  +     Depend on unexec.h.
  +     * emacs.c [!defined CANNOT_DUMP]: Include unexec.h.
  +     * unexaix.c, unexcoff.c, unexcw.c, unexelf.c, unexhp9k800.c:
  +     * unexmacosx.c, unexsol.c, unexw32.c: Include unexec.h.
  +     Change as necessary to match prototype in unexec.h.
   
  -     * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
  +     * syntax.c (Fforward_comment, scan_lists): Rename locals to avoid
  +     shadowing.
  +     (back_comment, skip_chars): Mark vars as initialized.
  +
  +     * character.h (FETCH_STRING_CHAR_ADVANCE_NO_CHECK, BUF_INC_POS):
  +     Rename locals to avoid shadowing.
  +
  +     * lread.c (read1): Rewrite so as not to use empty "else".
  +     (Fload, readevalloop, read1): Rename locals to avoid shadowing.
  +
  +     * print.c (Fredirect_debugging_output): Fix pointer signedess.
  +
  +     * lisp.h (debug_output_compilation_hack): Add decl here, to avoid
  +     warning when compiling print.c.
  +
  +     * font.c (font_unparse_fcname): Abort in an "impossible" situation
  +     instead of using an uninitialized var.
  +     (font_sort_entities): Mark var as initialized.
  +
  +     * character.h (FETCH_CHAR_ADVANCE): Rename locals to avoid shadowing.
  +
  +     * font.c (font_unparse_xlfd): Don't mix pointers to variables with
  +     pointers to constants.
  +     (font_parse_fcname): Remove unused vars.
  +     (font_delete_unmatched): Now static.
  +     (font_get_spec): Remove; unused.
  +     (font_style_to_value, font_prop_validate_style, font_unparse_fcname):
  +     (font_update_drivers, Ffont_get_glyphs, font_add_log):
  +     Rename or move locals to avoid shadowing.
  +
  +     * fns.c (require_nesting_list, require_unwind): Now static.
  +     (Ffillarray): Rename locals to avoid shadowing.
  +
  +     * floatfns.c (domain_error2): Define only if needed.
  +     (Ffrexp, Fldexp): Rename locals to avoid shadowing.
  +
  +     * alloc.c (mark_backtrace): Move decl from here ...
  +     * lisp.h: ... to here, so that it can be checked.
  +
  +     * eval.c (call_debugger, do_debug_on_call, grow_specpdl): Now static.
  +     (Fdefvar): Rewrite so as not to use empty "else".
  +     (lisp_indirect_variable): Name an expression,
  +     to avoid gcc -Wbad-function-cast warning.
  +     (Fdefvar): Rename locals to avoid shadowing.
  +
  +     * callint.c (quotify_arg, quotify_args): Now static.
  +     (Fcall_interactively): Rename locals to avoid shadowing.
  +     Use const pointer when appropriate.
  +
  +     * lisp.h (get_system_name, get_operating_system_release):
  +     Move decls here, to check interfaces.
  +     * process.c (get_operating_system_release): Move decl to lisp.h.
  +     * xrdb.c (get_system_name): Likewise.
  +     * editfns.c (init_editfns, Fuser_login_name, Fuser_uid):
  +     (Fuser_real_uid, Fuser_full_name): Remove unnecessary casts,
  +     some of which prompt warnings from gcc -Wbad-function-cast.
  +     (Fformat_time_string, Fencode_time, Finsert_char):
  +     (Ftranslate_region_internal, Fformat):
  +     Rename or remove local vars to avoid shadowing.
  +     (Ftranslate_region_internal): Mark var as initialized.
  +
  +     * doc.c (Fdocumentation, Fsnarf_documentation): Move locals to
  +     avoid shadowing.
  +
  +     * lisp.h (eassert): Check that the argument compiles, even if
  +     ENABLE_CHECKING is not defined.
  +
  +     * data.c (Findirect_variable): Name an expression, to avoid
  +     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.
  +     (do_blv_forwarding, do_symval_forwarding): Remove; unused.
  +
  +     * alloc.c (check_cons_list): Do not define unless GC_CHECK_CONS_LIST.
  +     (Fmake_vector, Fvector, Fmake_byte_code, Fgarbage_collect):
  +     Rename locals to avoid shadowing.
  +     (mark_stack): Move local variables into the #ifdef region where
  +     they're used.
  +     (BLOCK_INPUT_ALLOC, UNBLOCK_INPUT_ALLOC): Define only if
  +     ! defined SYSTEM_MALLOC && ! defined SYNC_INPUT, as they are not
  +     needed otherwise.
  +     (CHECK_ALLOCATED): Define only if GC_CHECK_MARKED_OBJECTS.
  +     (GC_STRING_CHARS): Remove; not used.
  +     (Fmemory_limit): Cast sbrk's returned value to char *.
  +
  +     * lisp.h (check_cons_list): Declare if GC_CHECK_CONS_LIST; this
  +     avoids undefined behavior in theory.
  +
  +     * regex.c (IF_LINT): Add defn, for benefit of ../lib-src.
  +
  +     Use functions, not macros, for up- and down-casing (Bug#8254).
  +     * buffer.h (DOWNCASE_TABLE, UPCASE_TABLE, DOWNCASE, UPPERCASEP):
  +     (NOCASEP, LOWERCASEP, UPCASE, UPCASE1): Remove.  All callers changed
  +     to use the following functions instead of these macros.
  +     (downcase): Adjust to lack of DOWNCASE_TABLE.  Return int, not
  +     EMACS_INT, since callers assume the returned value fits in int.
  +     (upcase1): Likewise, for UPCASE_TABLE.
  +     (uppercasep, lowercasep, upcase): New static inline functions.
  +     * editfns.c (Fchar_equal): Remove no-longer-needed workaround for
  +     the race-condition problem in the old DOWNCASE.
  +
  +     * regex.c (CHARSET_LOOKUP_RANGE_TABLE_RAW, POP_FAILURE_REG_OR_COUNT):
  +     Rename locals to avoid shadowing.
  +     (regex_compile, re_match_2_internal): Move locals to avoid shadowing.
  +     (regex_compile, re_search_2, re_match_2_internal):
  +     Remove unused local vars.
  +     (FREE_VAR): Rewrite so as not to use empty "else",
  +     which gcc can warn about.
  +     (regex_compile, re_match_2_internal): Mark locals as initialized.
  +     (RETALLOC_IF): Define only if needed.
  +     (WORDCHAR_P): Likewise.  This one is never needed, but is used
  +     only in a comment talking about a compiler bug, so put inside
  +     the #if 0 of that comment.
  +     (CHARSET_LOOKUP_BITMAP, FAIL_STACK_FULL, RESET_FAIL_STACK):
  +     (PUSH_FAILURE_ELT, BUF_PUSH_3, STOP_ADDR_VSTRING):
  +     Remove; unused.
  +
  +     * search.c (boyer_moore): Rename locals to avoid shadowing.
  +     * character.h (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE):
  +     (PREV_CHAR_BOUNDARY): Likewise.
  +
  +     * search.c (simple_search): Remove unused var.
  +
  +     * dired.c (compile_pattern): Move decl from here ...
  +     * lisp.h: ... to here, so that it can be checked.
  +     (struct re_registers): New forward decl.
  +
  +     * character.h (INC_POS, DEC_POS): Rename locals to avoid shadowing.
  +
  +     * indent.c (MULTIBYTE_BYTES_WIDTH): New args bytes, width.
  +     All uses changed.
  +     (MULTIBYTE_BYTES_WIDTH, scan_for_column, compute_motion):
  +     Rename locals to avoid shadowing.
  +     (Fvertical_motion): Mark locals as initialized.
  +
  +     * casefiddle.c (casify_object, casify_region): Now static.
  +     (casify_region): Mark local as initialized.
  +
  +     * cmds.c (internal_self_insert): Rename local to avoid shadowing.
  +
  +     * lisp.h (GCPRO2_VAR, GCPRO3_VAR, GCPRO4_VAR, GCPRO5_VAR, GCPRO6_VAR):
  +     New macros, so that the caller can use some names other than
  +     gcpro1, gcpro2, etc.
  +     (GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6): Reimplement in terms
  +     of the new macros.
  +     (GCPRO1_VAR, UNGCPRO_VAR): Change the meaning of the second
  +     argument, for consistency with GCPRO2_VAR, etc: it is now the
  +     prefix of the variable, not the variable itself.  All uses
  +     changed.
  +     * dired.c (directory_files_internal, file_name_completion):
  +     Rename locals to avoid shadowing.
  +
  +     Fix a race condition diagnosed by gcc -Wsequence-point (Bug#8254).
  +     An expression of the form (DOWNCASE (x) == DOWNCASE (y)), found in
  +     dired.c's scmp function, had undefined behavior.
  +     * lisp.h (DOWNCASE_TABLE, UPCASE_TABLE, DOWNCASE, UPPERCASEP):
  +     (NOCASEP, LOWERCASEP, UPCASE, UPCASE1): Move from here ...
  +     * buffer.h: ... to here, because these macros use current_buffer,
  +     and the new implementation with inline functions needs to have
  +     current_buffer in scope now, rather than later when the macros
  +     are used.
  +     (downcase, upcase1): New static inline functions.
  +     (DOWNCASE, UPCASE1): Reimplement using these functions.
  +     This avoids undefined behavior in expressions like
  +     DOWNCASE (x) == DOWNCASE (y), which previously suffered
  +     from race conditions in accessing the global variables
  +     case_temp1 and case_temp2.
  +     * casetab.c (case_temp1, case_temp2): Remove; no longer needed.
  +     * lisp.h (case_temp1, case_temp2): Remove their decls.
  +     * character.h (ASCII_CHAR_P): Move from here ...
  +     * lisp.h: ... to here, so that the inline functions mentioned
  +     above can use them.
  +
  +     * dired.c (directory_files_internal_unwind): Now static.
  +
  +     * fileio.c (file_name_as_directory, directory_file_name):
  +     (barf_or_query_if_file_exists, auto_save_error, auto_save_1):
  +     Now static.
  +     (file_name_as_directory): Use const pointers when appropriate.
  +     (Fexpand_file_name): Likewise.  In particular, newdir might
  +     point at constant storage, so make it a const pointer.
  +     (Fmake_directory_internal, Fread_file_name): Remove unused vars.
  +     (Ffile_selinux_context, Fset_file_selinux_context): Fix pointer
  +     signedness issues.
  +     (Fset_file_times, Finsert_file_contents, auto_save_error):
  +     Rename locals to avoid shadowing.
  +
  +     * minibuf.c (choose_minibuf_frame_1): Now static.
  +     (Ftry_completion, Fall_completions): Rename or remove locals
  +     to avoid shadowing.
  +
  +     * marker.c (bytepos_to_charpos): Remove; unused.
  +
  +     * lisp.h (verify_bytepos, count_markers): New decls,
  +     so that gcc does not warn that these functions aren't declared.
  +
  +     * insdel.c (check_markers, make_gap_larger, make_gap_smaller):
  +     (reset_var_on_error, Fcombine_after_change_execute_1): Now static.
  +     (CHECK_MARKERS): Redo to avoid gcc -Wempty-body diagnostic.
  +     (copy_text): Remove unused local var.
  +
  +     * filelock.c (within_one_second): Now static.
  +     (lock_file_1): Rename local to avoid shadowing.
  +
  +     * buffer.c (fix_overlays_before): Mark locals as initialized.
  +     (fix_start_end_in_overlays): Likewise.  This function should be
  +     simplified by using pointers-to-pointers, but that's a different
  +     matter.
  +     (switch_to_buffer_1): Now static.
  +     (Fkill_buffer, record_buffer, Fbury_buffer, Fset_buffer_multibyte):
  +     (report_overlay_modification): Rename locals to avoid shadowing.
  +
  +     * sysdep.c (system_process_attributes): Rename vars to avoid shadowing.
  +     Fix pointer signedness issue.
  +     (sys_subshell): Mark local as volatile if checking for lint,
  +     to suppress a gcc -Wclobbered warning that does not seem to be right.
  +     (MAXPATHLEN): Define only if needed.
  +
  +     * process.c (serial_open, serial_configure): Move decls from here ...
  +     * systty.h: ... to here, so that they can be checked.
  +
  +     * fns.c (get_random, seed_random): Move extern decls from here ...
  +     * lisp.h: ... to here, so that they can be checked.
  +
  +     * sysdep.c (reset_io): Now static.
  +     (wait_for_termination_signal): Remove; unused.
  +
  +     * keymap.c (keymap_parent, keymap_memberp, map_keymap_internal):
  +     (copy_keymap_item, append_key, push_text_char_description):
  +     Now static.
  +     (Fwhere_is_internal): Don't test CONSP (sequences) unnecessarily.
  +     (DENSE_TABLE_SIZE): Remove; unused.
  +     (get_keymap, access_keymap, Fdefine_key, Fwhere_is_internal):
  +     (describe_map_tree):
  +     Rename locals to avoid shadowing.
  +
  +     * keyboard.c: Declare functions static if they are not used elsewhere.
  +     (echo_char, echo_dash, cmd_error, top_level_2):
  +     (poll_for_input, handle_async_input): Now static.
  +     (read_char, kbd_buffer_get_event, make_lispy_position):
  +     (make_lispy_event, make_lispy_movement, apply_modifiers):
  +     (decode_keyboard_code, tty_read_avail_input, menu_bar_items):
  +     (parse_tool_bar_item, read_key_sequence, Fread_key_sequence):
  +     (Fread_key_sequence_vector): Rename locals to avoid shadowing.
  +     (read_key_sequence, read_char): Mark locals as initialized.
  +     (Fexit_recursive_edit, Fabort_recursive_edit): Mark with NO_RETURN.
  +
  +     * keyboard.h (make_ctrl_char): New decl.
  +     (mark_kboards): Move decl here ...
  +     * alloc.c (mark_kboards): ... from here.
  +
  +     * lisp.h (force_auto_save_soon): New decl.
  +
  +     * emacs.c (init_cmdargs): Rename local to avoid shadowing.
  +     (DEFINE_DUMMY_FUNCTION): New macro.
  +     (__do_global_ctors, __do_global_ctors_aux, __do_global_dtors, __main):
  +     Use it.
  +     (main): Add casts to avoid warnings
  +     if GCC considers string literals to be constants.
  +
  +     * lisp.h (fatal_error_signal): Add decl, since it's exported.
  +
  +     * dbusbind.c: Pointer signedness fixes.
  +     (xd_signature, xd_append_arg, xd_initialize):
  +     (Fdbus_call_method, Fdbus_call_method_asynchronously):
  +     (Fdbus_method_return_internal, Fdbus_method_error_internal):
  +     (Fdbus_send_signal, xd_read_message_1, Fdbus_register_service):
  +     (Fdbus_register_signal): Use SSDATA when the context wants char *.
  +
  +     * dbusbind.c (Fdbus_init_bus): Add cast to avoid warning
  +     if GCC considers string literals to be constants.
  +     (Fdbus_register_service, Fdbus_register_method): Remove unused vars.
  +
  +2011-03-16  Stefan Monnier  <monnier@iro.umontreal.ca>
  +
  +     * print.c (PRINT_CIRCLE_CANDIDATE_P): New macro.
  +     (print_preprocess, print_object): New macro to fix last change.
  +
  +     * print.c (print_preprocess): Don't forget font objects.
  +
  +2011-03-16  Juanma Barranquero  <lekktu@gmail.com>
  +
  +     * emacs.c (USAGE3): Doc fixes.
  +
  +2011-03-15  Andreas Schwab  <schwab@linux-m68k.org>
   
  -2007-05-07  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * coding.c (detect_coding_iso_2022): Reorganize code to clarify
  +     structure.
   
  -     * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
  -     mixup (YAILOM).
  +2011-03-14  Juanma Barranquero  <lekktu@gmail.com>
   
  -2007-05-07  Andreas Schwab  <schwab@suse.de>
  +     * lisp.h (VWindow_system, Qfile_name_history):
  +     * keyboard.h (lispy_function_keys) [WINDOWSNT]:
  +     * w32term.h (w32_system_caret_hwnd, w32_system_caret_height)
  +     (w32_system_caret_x, w32_system_caret_y): Declare extern.
   
  -     * keymap.c (Flookup_key): Fix typo in last change.
  +     * w32select.c: Don't #include "keyboard.h".
  +     (run_protected): Add extern declaration for waiting_for_input.
   
  -2007-05-07  Stefan Monnier  <monnier@iro.umontreal.ca>
  +     * w32.c (Qlocal, noninteractive1, inhibit_window_system):
  +     * w32console.c (detect_input_pending, read_input_pending)
  +     (encode_terminal_code):
  +     * w32fns.c (quit_char, lispy_function_keys, Qtooltip)
  +     (w32_system_caret_hwnd, w32_system_caret_height, w32_system_caret_x)
  +     (w32_system_caret_y, Qfile_name_history):
  +     * w32font.c (w32font_driver, QCantialias, QCotf, QClang):
  +     * w32inevt.c (reinvoke_input_signal, lispy_function_keys):
  +     * w32menu.c (Qmenu_bar, QCtoggle, QCradio, Qoverriding_local_map)
  +     (Qoverriding_terminal_local_map, Qmenu_bar_update_hook):
  +     * w32proc.c (Qlocal, report_file_error):
  +     * w32term.c (Vwindow_system, updating_frame):
  +     * w32uniscribe.c (initialized, uniscribe_font_driver):
  +     Remove unneeded extern declarations.
   
  -     * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
  -     mapping for unibyte strings.
  +2011-03-14  Chong Yidong  <cyd@stupidchicken.com>
   
  -2007-05-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  +     * buffer.c (Fmake_indirect_buffer): Fix incorrect assertions.
   
  -     * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
  -     (Fx_popup_dialog) [MAC_OSX]: Likewise.
  +2011-03-13  Chong Yidong  <cyd@stupidchicken.com>
   
  -2007-04-29  Richard Stallman  <rms@gnu.org>
  +     * buffer.h (BUF_BEGV, BUF_BEGV_BYTE, BUF_ZV, BUF_ZV_BYTE, BUF_PT)
  +     (BUF_PT_BYTE): Rewrite to handle indirect buffers (Bug#8219).
  +     These macros can no longer be used for assignment.
   
  -     * insdel.c (replace_range): For undo, record insertion first.
  +     * 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.
   
  -2007-04-29  Andreas Schwab  <schwab@suse.de>
  +     * lread.c (unreadchar): Use SET_BUF_PT_BOTH.
   
  -     * lisp.h (VECSIZE): Use OFFSETOF.
  +     * insdel.c (adjust_point): Use SET_BUF_PT_BOTH.
   
  -2007-04-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
  +     * intervals.c (temp_set_point_both): Use SET_BUF_PT_BOTH.
  +     (get_local_map): Use SET_BUF_BEGV_BOTH and SET_BUF_ZV_BOTH.
   
  -     * xdisp.c (try_window_reusing_current_matrix): Fix number of
  -     disabled lines.
  +     * xdisp.c (hscroll_window_tree):
  +     (reconsider_clip_changes): Use PT instead of BUF_PT.
   
  -2007-04-28  Richard Stallman  <rms@gnu.org>
  +2011-03-13  Eli Zaretskii  <eliz@gnu.org>
  +
  +     * makefile.w32-in ($(BLD)/editfns.$(O)): Depend on
  +     $(EMACS_ROOT)/lib/intprops.h.
  +
  +2011-03-13  Paul Eggert  <eggert@cs.ucla.edu>
  +
  +     Fix more problems found by GCC 4.5.2's static checks.
  +
  +     * gtkutil.c (xg_get_pixbuf_from_pixmap): Add cast from char *
  +     to unsigned char * to avoid compiler diagnostic.
  +     (xg_free_frame_widgets): Make it clear that a local variable is
  +     needed only if USE_GTK_TOOLTIP.
  +     (gdk_window_get_screen): Make it clear that this macro is needed
  +     only if USE_GTK_TOOLTIP.
  +     (int_gtk_range_get_value): New function, which avoids a diagnostic
  +     from gcc -Wbad-function-cast.
  +     (xg_set_toolkit_scroll_bar_thumb): Use it.
  +     (xg_tool_bar_callback, xg_tool_item_stale_p): Rewrite to avoid
  +     diagnostic from gcc -Wbad-function-cast.
  +     (get_utf8_string, xg_get_file_with_chooser):
  +     Rename locals to avoid shadowing.
  +     (create_dialog): Move locals to avoid shadowing.
  +
  +     * xgselect.c (xg_select): Remove unused var.
  +
  +     * image.c (four_corners_best): Mark locals as initialized.
  +     (gif_load): Initialize transparent_p to zero (Bug#8238).
  +     Mark another local as initialized.
  +     (my_png_error, my_error_exit): Mark with NO_RETURN.
  +
  +     * image.c (clear_image_cache): Now static.
  +     (DIM, HAVE_STDLIB_H_1): Remove unused macros.
  +     (xpm_load): Redo to avoid "discards qualifiers" gcc warning.
  +     (x_edge_detection): Remove unnecessary cast that
  +     gcc -Wbad-function-cast diagnoses.
  +     (gif_load): Fix pointer signedness.
  +     (clear_image_cache, xbm_read_bitmap_data, x_detect_edges):
  +     (jpeg_load, gif_load): Rename locals to avoid shadowing.
  +
  +2011-03-12  Paul Eggert  <eggert@cs.ucla.edu>
  +
  +     Improve quality of tests for time stamp overflow.
  +     For example, without this patch (encode-time 0 0 0 1 1
  +     1152921504606846976) returns the obviously-bogus value (-948597
  +     62170) on my RHEL 5.5 x86-64 host.  With the patch, it correctly
  +     reports time overflow.  See
  +     <http://lists.gnu.org/archive/html/emacs-devel/2011-03/msg00470.html>.
  +     * deps.mk (editfns.o): Depend on ../lib/intprops.h.
  +     * editfns.c: Include limits.h and intprops.h.
  +     (TIME_T_MIN, TIME_T_MAX): New macros.
  +     (time_overflow): Move earlier, to before first use.
  +     (hi_time, lo_time): New functions, for an accurate test for
  +     out-of-range times.
  +     (Fcurrent_time, Fget_internal_run_time, make_time): Use them.
  +     (Fget_internal_run_time): Don't assume time_t fits in int.
  +     (make_time): Use list2 instead of Fcons twice.
  +     (Fdecode_time): More accurate test for out-of-range times.
  +     (check_tm_member): New function.
  +     (Fencode_time): Use it, to test for out-of-range times.
  +     (lisp_time_argument): Don't rely on undefined left-shift and
  +     right-shift behavior when checking for time stamp overflow.
  +
  +     * editfns.c (time_overflow): New function, refactoring common code.
  +     (Fformat_time_string, Fdecode_time, Fencode_time):
  +     (Fcurrent_time_string): Use it.
  +
  +     Move 'make_time' to be next to its inverse 'lisp_time_argument'.
  +     * dired.c (make_time): Move to ...
  +     * editfns.c (make_time): ... here.
  +     * systime.h: Note the move.
  +
  +2011-03-12  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
   
  -     * lread.c (read_escape): In a string, \s is always space.
  +     * fringe.c (update_window_fringes): Remove unused variables.
   
  -2007-04-27  Jan Djärv  <jan.h.d@swipnet.se>
  +     * unexmacosx.c (copy_data_segment): Also copy __got section.
  +     (Bug#8223)
   
  -     * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
  +2011-03-12  Eli Zaretskii  <eliz@gnu.org>
  +
  +     * termcap.c [MSDOS]: Include "msdos.h".
  +     (find_capability, tgetnum, tgetflag, tgetstr, tputs, tgetent):
  +     Constify `char *' arguments and their references according to
  +     prototypes in tparam.h.
  +
  +     * deps.mk (termcap.o): Depend on tparam.h and msdos.h.
  +
  +     * msdos.c (XMenuAddPane): 3rd argument is `const char *' now.
  +     Adapt all references accordingly.
  +
  +     * msdos.h (XMenuAddPane): 3rd argument is `const char *' now.
  +
  +2011-03-11  Tom Tromey  <tromey@redhat.com>
  +
  +     * buffer.c (syms_of_buffer): Remove obsolete comment.
  +
  +2011-03-11  Eli Zaretskii  <eliz@gnu.org>
  +
  +     * termhooks.h (encode_terminal_code): Declare prototype.
  +
  +     * msdos.c (encode_terminal_code): Don't declare prototype.
  +
  +     * 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.
  +
  +2011-03-11  Paul Eggert  <eggert@cs.ucla.edu>
  +
  +     Fix some minor problems found by GCC 4.5.2's static checks.
  +
  +     * fringe.c (update_window_fringes): Mark locals as initialized
  +     (Bug#8227).
  +     (destroy_fringe_bitmap, init_fringe_bitmap): Now static.
  +
  +     * alloc.c (mark_fringe_data): Move decl from here ...
  +     * lisp.h (mark_fringe_data) [HAVE_WINDOW_SYSTEM]: ... to here,
  +     to check its interface.
  +     (init_fringe_once): Do not declare unless HAVE_WINDOW_SYSTEM.
  +
  +     * fontset.c (free_realized_fontset): Now static.
  +     (Fset_fontset_font): Rename local to avoid shadowing.
  +     (fontset_font): Mark local as initialized.
  +     (FONTSET_SPEC, FONTSET_REPERTORY, RFONT_DEF_REPERTORY): Remove; unused.
  +
  +     * xrdb.c: Include "xterm.h", to check x_load_resources's interface.
  +
  +     * xselect.c (x_disown_buffer_selections): Remove; not used.
  +     (TRACE3) [!defined TRACE_SELECTION]: Remove; not used.
  +     (x_own_selection, Fx_disown_selection_internal): Rename locals
  +     to avoid shadowing.
  +     (x_handle_dnd_message): Remove local to avoid shadowing.
  +
  +     * lisp.h (GCPRO1_VAR, UNGCPRO_VAR): New macros,
  +     so that the caller can use some name other than gcpro1.
  +     (GCPRO1, UNGCPRO): Reimplement in terms of the new macros.
  +     * xfns.c (Fx_create_frame, x_create_tip_frame, Fx_show_tip):
  +     (Fx_backspace_delete_keys_p):
  +     Use them to avoid shadowing, and rename vars to avoid shadowing.
  +     (x_decode_color, x_set_name, x_window): Now static.
  +     (Fx_create_frame): Add braces to silence GCC warning.
  +     (Fx_file_dialog, Fx_select_font): Fix pointer signedness.
  +     (x_real_positions, xg_set_icon_from_xpm_data, x_create_tip_frame):
  +     Remove unused locals.
  +     (Fx_create_frame, x_create_tip_frame, Fx_show_tip):
  +     (Fx_backspace_delete_keys_p): Rename locals to avoid shadowing.
  +     Some of these renamings use the new GCPRO1_VAR and UNGCPRO_VAR
  +     macros.
  +
  +     * xterm.h (x_mouse_leave): New decl.
  +
  +     * xterm.c (x_copy_dpy_color, x_focus_on_frame, x_unfocus_frame):
  +     Remove unused functions.
  +     (x_shift_glyphs_for_insert, XTflash, XTring_bell):
  +     (x_calc_absolute_position): Now static.
  +     (XTread_socket): Don't define label "out" unless it's used.
  +     Don't declare local "event" unless it's used.
  +     (x_iconify_frame, x_free_frame_resources): Don't declare locals
  +     unless they are used.
  +     (XEMBED_VERSION, xembed_set_info): Don't define unless needed.
  +     (x_fatal_error_signal): Remove; not used.
  +     (x_draw_image_foreground, redo_mouse_highlight, XTmouse_position):
  +     (x_scroll_bar_report_motion, handle_one_xevent, x_draw_bar_cursor):
  +     (x_error_catcher, x_connection_closed, x_error_handler):
  +     (x_error_quitter, xembed_send_message, x_iconify_frame):
  +     (my_log_handler): Rename locals to avoid shadowing.
  +     (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.
  +     (tty_defined_color, merge_face_heights): Now static.
  +     (free_realized_faces_for_fontset): Remove; not used.
  +     (Fx_list_fonts): Mark variable that gcc -Wuninitialized
  +     does not deduce is never used uninitialized.
  +     (STRDUPA, LSTRDUPA, FONT_POINT_SIZE_QUANTUM): Remove; not used.
  +     (LFACEP): Define only if XASSERTS, as it's not needed otherwise.
  +
  +     * terminal.c (store_terminal_param): Now static.
  +
  +     * xmenu.c (menu_highlight_callback): Now static.
  +     (set_frame_menubar): Remove unused local.
  +     (xmenu_show): Rename parameter to avoid shadowing.
  +     (xmenu_show, xdialog_show, xmenu_show): Make local pointers "const"
  +     since they might point to immutable storage.
  +     (next_menubar_widget_id): Declare only if USE_X_TOOLKIT,
  +     since it's unused otherwise.
  +
  +     * xdisp.c (produce_glyphless_glyph): Initialize lower_xoff.
  +     Add a FIXME, since the code still doesn't look right.  (Bug#8215)
  +     (Fcurrent_bidi_paragraph_direction): Simplify slightly; this
  +     avoids a gcc -Wuninitialized diagnostic.
  +     (display_line, BUILD_COMPOSITE_GLYPH_STRING, draw_glyphs):
  +     (note_mouse_highlight): Mark variables that gcc -Wuninitialized
  +     does not deduce are never used uninitialized.
  +
  +     * lisp.h (IF_LINT): New macro, copied from ../lib-src/emacsclient.c.
  +
  +     * xdisp.c (redisplay_window): Rename local to avoid shadowing.
  +     * window.c (window_loop, size_window):
  +     (run_window_configuration_change_hook, enlarge_window): Likewise.
  +
  +     * window.c (display_buffer): Now static.
  +     (size_window): Mark variables that gcc -Wuninitialized
  +     does not deduce are never used uninitialized.
  +     * window.h (check_all_windows): New decl, to forestall
  +     gcc -Wmissing-prototypes diagnostic.
  +     * dispextern.h (bidi_dump_cached_states): Likewise.
  +
  +     * charset.h (CHECK_CHARSET_GET_CHARSET): Rename locals to avoid
  +     shadowing.
  +     * charset.c (map_charset_for_dump, Fchar_charset): Likewise.
  +     Include <limits.h>.
  +     (Fsort_charsets): Redo min/max calculation to shorten the code a bit
  +     and to avoid gcc -Wuninitialized warning.
  +     (load_charset_map): Mark variables that gcc -Wuninitialized
  +     does not deduce are never used uninitialized.
  +     (load_charset): Abort instead of using uninitialized var (Bug#8229).
  +
  +     * coding.c (coding_set_source, coding_set_destination):
  +     Use "else { /* comment */ }" rather than "else /* comment */;"
  +     for clarity, and to avoid gcc -Wempty-body warning.
  +     (Fdefine_coding_system_internal): Don't redeclare 'i' inside
  +     a block, when the outer 'i' will do.
  +     (decode_coding_utf_8, decode_coding_utf_16, detect_coding_emacs_mule):
  +     (emacs_mule_char, decode_coding_emacs_mule, detect_coding_iso_2022):
  +     (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5):
  +     (decode_coding_raw_text, decode_coding_charset, get_translation_table):
  +     (Fdecode_sjis_char, Fdefine_coding_system_internal):
  +     Rename locals to avoid shadowing.
  +     * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
  +     * coding.c (emacs_mule_char, encode_invocation_designation):
  +     Now static, since they're not used elsewhere.
  +     (decode_coding_iso_2022): Add "default: abort ();" as a safety check.
  +     (decode_coding_object, encode_coding_object, detect_coding_system):
  +     (decode_coding_emacs_mule): Mark variables that gcc
  +     -Wuninitialized does not deduce are never used uninitialized.
  +     (detect_coding_iso_2022): Initialize a local variable that might
  +     be used uninitialized.  Leave a FIXME because it's not clear that
  +     this initialization is needed.  (Bug#8211)
  +     (ISO_CODE_LF, ISO_CODE_CR, CODING_ISO_FLAG_EUC_TW_SHIFT):
  +     (ONE_MORE_BYTE_NO_CHECK, UTF_BOM, UTF_16_INVALID_P):
  +     (SHIFT_OUT_OK, ENCODE_CONTROL_SEQUENCE_INTRODUCER):
  +     (ENCODE_DIRECTION_R2L, ENCODE_DIRECTION_L2R):
  +     Remove unused macros.
  +
  +     * category.c (hash_get_category_set): Remove unused local var.
  +     (copy_category_table): Now static, since it's not used elsewhere.
  +     * character.c (string_count_byte8): Likewise.
  +
  +     * ccl.c (CCL_WRITE_STRING, CCL_ENCODE_CHAR, Fccl_execute_on_string):
  +     (Fregister_code_conversion_map): Rename locals to avoid shadowing.
  +
  +     * chartab.c (copy_sub_char_table): Now static, since it's not used
  +     elsewhere.
  +     (sub_char_table_ref_and_range, char_table_ref_and_range):
  +     Rename locals to avoid shadowing.
  +     (ASET_RANGE, GET_SUB_CHAR_TABLE): Remove unused macros.
  +
  +     * bidi.c (bidi_check_type): Now static, since it's not used elsewhere.
  +     (BIDI_BOB): Remove unused macro.
  +
  +     * cm.c (cmgoto): Mark variables that gcc -Wuninitialized does not
  +     deduce are never used uninitialized.
  +     * term.c (encode_terminal_code): Likewise.
  +
  +     * term.c (encode_terminal_code): Now static.  Remove unused local.
  +
  +     * tparam.h: New file.
  +     * term.c, tparam.h: Include it.
  +     * deps.mk (term.o, tparam.o): Depend on tparam.h.
  +     * term.c (tputs, tgetent, tgetflag, tgetnum, tparam, tgetstr):
  +     Move these decls to tparam.h, and make them agree with what
  +     is actually in tparam.c.  The previous trick of using incompatible
  +     decls in different modules does not conform to the C standard.
  +     All callers of tparam changed to use tparam's actual API.
  +     * tparam.c (tparam1, tparam, tgoto):
  +     Use const pointers where appropriate.
  +
  +     * cm.c (calccost, cmgoto): Use const pointers where appropriate.
  +     * cm.h (struct cm): Likewise.
  +     * dispextern.h (do_line_insertion_deletion_costs): Likewise.
  +     * scroll.c (ins_del_costs, do_line_insertion_deletion_costs): Likewise.
  +     * term.c (tty_ins_del_lines, calculate_costs, struct fkey_table):
  +     (term_get_fkeys_1, append_glyphless_glyph, produce_glyphless_glyph):
  +     (turn_on_face, init_tty): Likewise.
  +     * termchar.h (struct tty_display_info): Likewise.
  +
  +     * term.c (term_mouse_position): Rename local to avoid shadowing.
  +
  +     * alloc.c (mark_ttys): Move decl from here ...
  +     * lisp.h (mark_ttys): ... to here, so that it's checked against defn.
  +
  +2011-03-11  Andreas Schwab  <schwab@linux-m68k.org>
  +
  +     * .gdbinit (pwinx, xbuffer): Fix access to buffer name.
  +
  +2011-03-09  Juanma Barranquero  <lekktu@gmail.com>
  +
  +     * search.c (compile_pattern_1): Remove argument regp, unused since
  +     revid:rms@gnu.org-19941211082627-3x1g1wyqkjmwloig.
  +     (compile_pattern): Don't pass it.
  +
  +2011-03-08  Jan Djärv  <jan.h.d@swipnet.se>
  +
  +     * xterm.h (DEFAULT_GDK_DISPLAY): New define.
  +     (GDK_WINDOW_XID, gtk_widget_get_preferred_size): New defines
  +     for ! HAVE_GTK3.
  +     (GTK_WIDGET_TO_X_WIN): Use GDK_WINDOW_XID.
  +
  +     * xmenu.c (menu_position_func): Call gtk_widget_get_preferred_size.
  +
  +     * gtkutil.c: Include gtkx.h if HAVE_GTK3.  If ! HAVE_GTK3, define
  +     gdk_window_get_screen, gdk_window_get_geometry,
  +     gdk_x11_window_lookup_for_display and GDK_KEY_g.
  +     (xg_set_screen): Use DEFAULT_GDK_DISPLAY.
  +     (xg_get_pixbuf_from_pixmap): New function.
  +     (xg_get_pixbuf_from_pix_and_mask): Change parameters from GdkPixmap
  +     to Pixmap, take frame as parameter, remove GdkColormap parameter.
  +     Call xg_get_pixbuf_from_pixmap instead of
  +     gdk_pixbuf_get_from_drawable.
  +     (xg_get_image_for_pixmap): Do not make GdkPixmaps, call
  +     xg_get_pixbuf_from_pix_and_mask with Pixmap parameters instead.
  +     (xg_check_special_colors): Use GtkStyleContext and its functions
  +     for HAVE_GTK3.
  +     (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_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_set_widget_bg): New function.
  +     (delete_cb): New function.
  +     (xg_create_frame_widgets): Connect delete-event to delete_cb.
  +     Call xg_set_widget_bg.  Only set backgrund pixmap for ! HAVE_GTK3
  +     (xg_set_background_color): Call xg_set_widget_bg.
  +     (xg_set_frame_icon): Call xg_get_pixbuf_from_pix_and_mask.
  +     (xg_create_scroll_bar): vadj is a GtkAdjustment for HAVE_GTK3.
  +     Only call gtk_range_set_update_policy if ! HAVE_GTK3.
  +     (xg_make_tool_item): Only connect xg_tool_bar_item_expose_callback
  +     if ! HAVE_GTK3.
  +     (update_frame_tool_bar): Call gtk_widget_hide.
  +     (xg_initialize): Use GDK_KEY_g.
  +
  +     * xsmfns.c (gdk_set_sm_client_id): Define to gdk_set_sm_client_id
  +     if ! HAVE_GTK3
  +     (x_session_initialize): Call gdk_x11_set_sm_client_id.
  +
  +     * xterm.c (XFillRectangle): Use cairo routines for HAVE_GTK3.
  +     (x_term_init): Disable Xinput(2) with GDK_CORE_DEVICE_EVENTS.
  +     Load ~/emacs.d/gtkrc only for ! HAVE_GTK3.
  +
  +2011-03-08  Juanma Barranquero  <lekktu@gmail.com>
   
  -     * gtkutil.c (xg_update_menubar, create_menus): Create empty
  -     submenu for menu bar items.
  +     * w32xfns.c (select_palette): Check success of RealizePalette against
  +     GDI_ERROR, not zero.
   
  -See ChangeLog.10 for earlier changes.
  +See ChangeLog.11 for earlier changes.
   
   ;; Local Variables:
   ;; coding: utf-8
diff --cc src/search.c
Simple merge
diff --cc src/xdisp.c
@@@@ -5810,18 -5810,18 -5429,7 +5810,18 @@@@ reseat_at_next_visible_line_start (stru
        }
       }
     else if (skipped_p)
  -    reseat (it, it->current.pos, 0);
  +    {
  +      reseat (it, it->current.pos, 0);
 -       if (it->bidi_p)
 ++      if (it->bidi_p && !STRINGP (it->string))
  +     {
  +       it->bidi_it.new_paragraph = new_paragraph;
  +       it->bidi_it.first_elt = first_elt;
  +       it->bidi_it.separator_limit = paragraph_end;
  +       it->bidi_it.paragraph_dir = paragraph_dir;
  +       it->bidi_it.disp_pos = disp_pos;
  +       it->bidi_it.disp_prop = disp_prop;
  +     }
  +    }
   
     CHECK_IT (it);
   }