]> code.delx.au - gnu-emacs/blobdiff - src/ChangeLog
* macterm.c: Remove consolidated defines and code.
[gnu-emacs] / src / ChangeLog
index 59b088cfc738af90e9322993d0db7bd6e61bffd2..dcd8d5f1e8d329ac360d694f6f88a43aaa32f5d3 100644 (file)
@@ -1,3 +1,341 @@
+2003-03-21  Kenichi Handa  <handa@m17n.org>
+
+       * fileio.c (Fexpand_file_name): Fix previous change.
+
+2003-03-19  Kenichi Handa  <handa@m17n.org>
+
+       * fileio.c (Ffile_name_directory): Reconstruct file name by
+       make_specified_string.
+       (Ffile_name_nondirectory, Ffile_name_as_directory)
+       (Fdirectory_file_name, Fexpand_file_name)
+       (Fsubstitute_in_file_name): Likewise.
+       (Fread_file_name): Compare decoded homedir with DIR and
+       DEFAULT_FILENAME.
+
+       * alloc.c (make_specified_string): If NCHARS is negative, count
+       the number of characters.
+
+2003-03-18  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+
+       * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
+       all widgets.
+
+       * gtkutil.h: Removed xg_ignore_next_thumb.
+
+2003-03-18  Kenichi Handa  <handa@etlken2>
+
+       * coding.c (Vchar_coding_system_table): Remove this variable.
+       (Vcoding_system_safe_chars): New variable.
+       (intersection): Remove this function.
+       (find_safe_codings): Don't use Vchar_coding_system_table, but try
+       all codings in SAFE_CODINGS.
+       (Ffind_coding_systems_region_internal): Adjusted for the change of
+       find_safe_codings.  Get generic coding systems from
+       Vcoding_system_safe_chars.
+       (Fdefine_coding_system_internal): New function.
+       (syms_of_coding): Defsubr Sdefine_coding_system_internal.
+       Initialize and staticpro Vcoding_system_safe_chars.
+
+2003-03-18  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+
+       * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
+       equal old values before updating.
+
+       * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
+
+       * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
+
+2003-03-17  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+
+       * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
+       (xg_resize_widgets): Don't call foreach(handle_fixed_child).
+       (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
+       (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
+       (xg_create_scroll_bar): Pass bar to button event callback.
+       (xg_find_top_left_in_fixed): New function.
+       (xg_update_scrollbar_pos): Don't call gdk_window_clear on
+       whole scroll bar area.  Get old position with
+       xg_find_top_left_in_fixed, calculate and only clear needed areas.
+       (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
+       dragging is in progress.  Calculate whole as for Motif.
+       Remove code that saved last values.  Call gtk_range functions to
+       set scroll bar sizes.
+
+       * gtkutil.h: Removed xg_ignore_next_thumb.
+
+2003-03-17  Juanma Barranquero  <lektu@terra.es>
+
+       * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
+       and files included from it.
+
+2003-03-16  Jason Rumney  <jasonr@gnu.org>
+
+       * w32gui.h: Use HDC for Display.
+
+       * w32term.c (w32_encode_char): Prevent double-byte chars from
+       crashing Emacs.
+
+       * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
+       as binary.
+
+2003-03-16  Juanma Barranquero  <lektu@terra.es>
+
+       * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
+
+2003-03-16  Kim F. Storm  <storm@cua.dk>
+
+       The following changes consolidate some of the gui-independent
+       parts of the processing and drawing of "glyph strings" from
+       xterm.c, w32term.c, and macterm.c into xdisp.c.
+
+       * dispextern.h (struct glyph): Reduce face_id member from 22 to
+       21 bits (this reduces number of faces from 4M to 2M).
+       Replace W32 specific w32_font_type member (2 bits) by generic
+       font_type member (3 bits) for portability.
+       (FONT_TYPE_UNKNOWN): New define, default for font_type member.
+       (enum draw_glyphs_face): Define here.
+       (struct glyph_string): Define here.  Merge W32 and X versions.
+       (struct redisplay_interface): New members per_char_metric,
+       encode_char, compute_glyph_string_overhangs, draw_glyph_string.
+       (VCENTER_BASELINE_OFFSET): Define here.
+       (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
+       (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
+
+       * xdisp.c: Consolidate gui-independent "glyph string" code here.
+       (dump_glyph_string): Moved here.
+       (init_glyph_string, append_glyph_string_lists, append_glyph_string)
+       (prepend_glyph_string_lists, get_glyph_face_and_encoding)
+       (fill_composite_glyph_string, fill_glyph_string)
+       (fill_image_glyph_string, fill_stretch_glyph_string)
+       (left_overwritten, left_overwriting, right_overwritten)
+       (right_overwriting, get_char_face_and_encoding)
+       (set_glyph_string_background_width, compute_overhangs_and_x)
+       (append_glyph, append_composite_glyph, produce_image_glyph)
+       (take_vertical_position_into_account, append_stretch_glyph)
+       (produce_stretch_glyph): New generic functions (based on X version).
+       Call platform specific functions through rif.
+       (INIT_GLYPH_STRING): New macro, hides W32 details.
+       (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
+       (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
+       (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
+       (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
+       (notice_overwritten_cursor):
+       Generic functions exported to platform modules.  Users changed.
+
+       * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
+       (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
+       (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
+       New macros for consolidated code.
+
+       * xterm.c: Remove consolidated defines and code.
+       (x_per_char_metric, x_encode_char)
+       (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
+       (x_redisplay_interface): Add new members.
+
+       * w32gui.h (Display): Add dummy typedef for consolidation.
+       (XChar2b): Define alias for wchar_t for consolidation.
+       (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
+
+       * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
+       (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
+       New macros for consolidation.
+
+       * w32term.c: Remove consolidated defines and code.
+       (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
+       to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
+       (w32_per_char_metric): Change font_type arg to int for RIF.
+       (w32_encode_char): Return int according to RIF requirements.
+       (w32_compute_glyph_string_overhangs): Adapt to RIF.
+       (w32_get_glyph_overhangs): New function for RIF.  Uses generic
+       x_get_glyph_overhangs.
+       (w32_redisplay_interface): Add new members.
+
+       * macgui.h (XChar2b): Move typedef here for consolidation.
+       (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
+
+       * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
+       (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
+       consolidation.
+
+       * macterm.c: Remove consolidated defines and code.
+       (mac_per_char_metric): New function for RIF.
+       (mac_encode_char): Adapted to new RIF requirements.
+       (mac_compute_glyph_string_overhangs): Adapt for RIF.
+       (x_redisplay_interface): Add new members.
+
+2003-03-14  Richard M. Stallman  <rms@gnu.org>
+
+       * lread.c (read1): After #!, exit loop on eof.
+
+2003-03-14  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+
+       * gtkutil.h: Add declaration for xg_frame_cleared.
+
+       * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
+
+       * gtkutil.c (struct xg_last_sb_pos): New structure.
+       (handle_fixed_child): New function.
+       (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
+       and force a redraw on them.
+       (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
+       (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
+       so we can avoid unneeded redraws.
+       (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
+       and force a redraw on the scroll bar.
+       (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
+       if xg_last_sb_pos shows the positions are up to date.
+       (xg_frame_cleared): New function.
+
+2003-03-13  Kenichi Handa  <handa@m17n.org>
+
+       * coding.c (Fdetect_coding_region): Fix docstring.
+       (Fdetect_coding_string): Fix docstring.
+
+2003-03-13  Andreas Schwab  <schwab@suse.de>
+
+       * gtkutil.c: Add prototype for create_menus.
+
+       * data.c (long_to_cons): Fix type of top.
+
+       * xselect.c (selection_data_to_lisp_data): Use int instead of
+       long for an integer of size 4.
+
+       * gtkutil.c (xg_update_frame_menubar): Add missing return value.
+       (xg_tool_bar_help_callback): Likewise.
+
+2003-03-12  Andreas Schwab  <schwab@suse.de>
+
+       * xterm.c (x_term_init) [USE_GTK]: Fix typo.
+
+2003-03-12  Kim F. Storm  <storm@cua.dk>
+
+       The following changes consolidate the fringe handling from
+       xterm.c, w32term.c, and macterm.c into xdisp.c.
+
+       * xdisp.c: Consolidate fringe handling code here.
+       (left_bits, right_bits, continued_bits, continuation_bits)
+       (ov_bits, zv_bits): Define fringe bitmaps.
+       (fringe_bitmaps): New array holding fringe bitmaps.
+       (draw_fringe_bitmap): Draw a specific bitmap; call display
+       specific drawing routine via rif->draw_fringe_bitmap.
+       (draw_row_fringe_bitmaps): Generic replacement for
+       x_draw_row_fringe_bitmaps; all callers changed.
+       (compute_fringe_widths): Generic replacement for
+       x_compute_fringe_widths; all callers changed.
+
+       * dispextern.h (enum fringe_bitmap_type): Define here.
+       (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
+       (fringe_bitmaps): Declare extern.
+       (struct redisplay_interface): New member draw_fringe_bitmap.
+       (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
+
+       * xterm.c: Remove generic fringe code.
+       (x_draw_fringe_bitmap): Only perform actual fringe drawing.
+       (x_redisplay_interface): Add x_draw_fringe_bitmap member.
+
+       * w32term.c: Remove generic fringe code.
+       (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
+       (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
+
+       * macterm.c: Remove generic fringe code.
+       (x_draw_fringe_bitmap): Only perform actual fringe drawing.
+       (x_redisplay_interface): Add x_draw_fringe_bitmap member.
+
+2003-03-11  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * print.c (Fprin1_to_string): Return unibyte string if possible.
+
+2003-03-09  David Kastrup  <dak@gnu.org>
+
+       * process.c (read_process_output): We have allocated enough space
+       for readmax and carryover, so actually use the alloted space.
+
+2003-03-09  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+
+       * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
+       toolkit scrollbar click.
+
+       * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
+       for USE_GTK.
+       (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
+       also.
+       (handle_one_xevent): ButtonPress/Release:  If event is for a toolkit
+       scrollbar and control is pressed, call x_scroll_bar_handle_click.
+
+       * gtkutil.h: Declare xg_get_scroll_id_for_window.
+
+       * gtkutil.c (xg_get_scroll_id_for_window): New function.
+       (xg_tool_bar_item_expose_callback): New function.
+       (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
+       (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
+       on the tool bar widget.
+       (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
+       to expose on the tool bar item widgets.
+
+2003-03-08  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+
+       * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
+       struct image* when deciding to update (struct image* may have been
+       deleted from the image cache).
+
+       * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
+       the event isn't for a frame (i.e. for dialogs).
+
+2003-03-07  Kenichi Handa  <handa@m17n.org>
+
+       * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
+       composition components reaches the limit, terminate composing.
+       (COMPOSITION_OK): New macro.
+       (detect_coding_iso2022): Use it if an escape sequence for
+       composition is found.
+       (coding_restore_composition): Adjust the number of composition
+       components if it is not sane.
+
+2003-03-06  Juanma Barranquero  <lektu@terra.es>
+
+       * w32term.h (struct w32_display_info): Add xrdb member to support
+       passing resources via -xrm on Windows.
+
+       * w32term.c (w32_make_rdb): New function.
+       (w32_term_init): Use it to initialize xrdb member of w32_display_info
+       struct.  Delete leftover code.
+
+       * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
+       for resources passed on the command line.
+
+       * w32reg.c (w32_get_rdb_resource): New function.
+       (x_get_string_resource): Use it, so resources passed with -xrm
+       supercede the ones in the registry.
+
+2003-03-04  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+
+       * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
+       instead of x_top_window_to_frame.
+
+2003-03-03  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+
+       * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
+       when restarting Emacs.
+
+2003-03-03  Richard M. Stallman  <rms@gnu.org>
+
+       * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
+       to run kill-buffer-query-functions.
+       (Qkill_buffer_query_functions): New var.
+       (syms_of_buffer): Init and staticpro it.
+
+2003-03-02  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+
+       * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
+
+2003-02-25  Kim F. Storm  <storm@cua.dk>
+
+       * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
+       If centering point failed to make whole line visible and vscroll
+       is non-zero, disable vscroll and try centering point again.
+
+       * lread.c (read1): Accept `single space' syntax like (? x).
+
 2003-02-25  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
 
        * keyboard.c (cancel_hourglass_unwind): Surround with
        * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
        process only when "subprocesses" is defined.
 
+2003-02-24  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
+
 2003-02-24  Juanma Barranquero  <lektu@terra.es>
 
        * callint.c (fix_command): Declare as static void and move before
        (notice_overwritten_cursor): Consider the cursor image erased if
        the output area intersects the cursor image in y-direction.
 
-       * w32term.c (note_mode_line_or_margin_highlight): Renamed from
-       note_mode_line_highlight and extended.
+       * w32term.c (note_mode_line_or_margin_highlight): Rename from
+       note_mode_line_highlight and extend.
 
        * w32term.c (last_window): New variable.
        (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
        * gtkutil.c (xg_create_frame_widgets): Check if there is an
        external tool bar before setting tool bar height.
 
-2003-01-19  Ja
+2003-01-19  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+
+       * xterm.c (handle_one_xevent): Surround popup_activated
+       with #ifdef:s for non-toolkit version.
+
+       * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
+       (gtkutil.o): New file.
+       (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
+       (LIBW): Set to @GTK_LIBS@ if USE_GTK.
+
+       * gtkutil.c: New file for GTK version.
+
+       * gtkutil.h: New file for GTK version.
+
+       * xterm.h: Add xt_or_gtk_widget.
+       Include gtk files for USE_GTK.
+       (struct x_output): Add toolbar_height.
+       (struct x_output): Add GTK widgets and Gdk size_hints.
+       (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
+       (FRAME_OUTER_WINDOW): New macros for USE_GTK.
+       (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
+
+       * xterm.c: Include gtkutil.h for USE_GTK.
+       Declare extern void free_frame_menubar for USE_GTK.
+       (note_mouse_highlight): Check popup_activated for USE_GTK.
+       (xt_action_hook): Don't compile if USE_GTK.
+       (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
+       (xg_scroll_callback): New function.
+       (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
+       (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
+       for USE_GTK.
+       (x_scroll_bar_create): Call xg_update_scrollbar_pos and
+       xg_show_scroll_bar for USE_GTK.
+       (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
+       (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
+       (event_handler_gdk): New function for USE_GTK.
+       (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
+       (handle_one_xevent): Make sure widget is mapped before
+       calling x_real_positions for USE_GTK.
+       (XTread_socket): Add GTK event loop for USE_GTK.
+       (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
+       (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
+       (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
+       (x_iconify_frame): Add code for USE_GTK.
+       (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
+       (x_wm_set_size_hint): Only compile if not USE_GTK.  GTK version
+       is in gtkutil.c.
+       (x_term_init): Add initialization for GTK.
+       (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
+
+       * xmenu.c: Include gtkutil.h for USE_GTK.
+       (Fx_popup_menu): Use current position if x and y is NIL.
+       (single_menu_item, single_menu_item, Fx_popup_dialog):
+       Check for USE_GTK.
+       (popup_widget_loop): New function for USE_GTK.
+       (x_activate_menubar): Add code for USE_GTK.
+       (popup_activate_callback, popup_deactivate_callback)
+       (menu_highlight_callback, menubar_selection_callback):
+       Add USE_GTK versions.
+       (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
+       (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
+       (free_frame_menubar): Only compile if not USE_GTK.  GTK version
+       is in gtkutil.c.
+       (popup_selection_callback): New version for USE_GTK.
+       (create_and_show_popup_menu): New fuction, one USE_GTK version and
+       one USE_X_TOOLKIT version.
+       (xmenu_show): Call create_and_show_popup_menu.
+       (dialog_selection_callback): New version for USE_GTK.
+       (create_and_show_dialog): New fuction, one USE_GTK version and
+       one USE_X_TOOLKIT version.
+       (xdialog_show): Call create_and_show_dialog.
+
+       * xfns.c: Include gtkutil for USE_GTK.
+       (x_window_to_frame, x_any_window_to_frame)
+       (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
+       (x_top_window_to_frame): Add code for USE_GTK.
+       (x_set_background_color): Call xg_set_background_color for GTK.
+       (x_set_menu_bar_lines): Check for USE_GTK.
+       (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
+       (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
+       (x_window): Call xg_create_frame_widgets for USE_GTK.
+       (Fx_create_frame): Check for USE_GTK
+       (Fx_file_dialog): New implementation for USE_GTK.
+
+       * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
+       (update_menu_bar): Add check for USE_GTK.
+       (update_tool_bar): Add check for USE_GTK and external tool bar.
+       (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
+       (redisplay_internal): Add check for USE_GTK and popup_activated.
+       (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
+       (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
+       (display_menu_bar): Add check for USE_GTK
+
+       * lisp.h: Declare Vx_resource_name extern.
+
+       * keyboard.c (kbd_buffer_get_event):  Check MENU_BAR_ACTIVATE_EVENT
+       for USE_GTK.
+       (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
+
+       * frame.h (struct frame): Add external_tool_bar.  Check for USE_GTK.
+       (FRAME_EXTERNAL_TOOL_BAR): New macro.
+       (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
+
+       * fileio.c (Fread_file_name): Add check for USE_GTK.
+
+       * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
+       Add check for USE_GTK.
+
+       * config.in: Added HAVE_GTK
+
+       * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
+
+2003-01-18  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * charset.h (Funibyte_char_to_multibyte): Export.
+
+2003-01-18  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+
+       * xmenu.c (mouse_position_for_popup): New function.
+       (Fx_popup_menu): Call mouse_position_for_popup for X and
+       mouse_position_hook for others.
+
+2003-01-17  Kim F. Storm  <storm@cua.dk>
+
+       * editfns.c (Finsert): Mention `string-make-multibyte' and
+       `string-as-multibyte' in doc string.
+
+2003-01-17  Kenichi Handa  <handa@m17n.org>
+
+       * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
 
-       * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
-       (x_from_xcolors): Adjust RGB values for W32.
-       (image_background, image_background_transparent)
-       (postprocess_image, x_to_xcolors, x_disable_image)
-       (x_build_heuristic_mask): Adapt for W32 and enable.
-       (x_create_x_image_and_pixmap): Mark images with palettes as such.
-       (xbm_load): Remove unused variable.
+       * editfns.c (Fformat): Convert an unibyte char argument that is
+       formatted by "%c" to multibyte if the total result must be a
+       multibyte string.
 
-2002-11-14  Richard M. Stallman  <rms@gnu.org>
+2003-01-16  Kim F. Storm  <storm@cua.dk>
 
-       * buffer.c (syms_of_buffer): Doc fix.
+       * process.c (set-process-filter): Document unibyte/multibyte-ness
+       of string argument.
 
-2002-11-14  Dave Love  <fx@gnu.org>
+2003-01-16  Kenichi Handa  <handa@m17n.org>
 
-       * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
+       * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
 
-       * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
-       * xmenu.c (unuse_menu_items, digest_single_submenu):
-       * xfns.c (x_put_x_image):
-       * xdisp.c (message2_nolog, set_message):
-       * undo.c (record_point):
-       * terminfo.c (tparam):
-       * syntax.c (scan_sexps_forward):
-       * scroll.c (calculate_scrolling, calculate_direct_scrolling):
-       * composite.c (update_compositions):
-       * cm.c (calccost, cmgoto):
-       * charset.c (c_string_width): Declare all args (per C99).
+       * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
+       (re_search_2): Likewise.
 
-       * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
+2003-01-15  Kenichi Handa  <handa@m17n.org>
 
-       * lisp.h (get_specified_cursor_type, get_window_cursor_type):
-       Don't declare.
+       * xdisp.c (message_dolog): Fix bug of the case that *Message*
+       buffer is unibyte.
 
-       * emacs.c (main) [!VMS]: Avoid third arg.
+2003-01-15  Francesco Potort\e,Al\e(B  <pot@gnu.org>
 
-       * fns.c (Fcopy_sequence): Doc fix.
-       (Fmap_char_table): Cast `call2'.
+       * fns.c (Fsubstring): Clarify doc string.
 
-2002-11-14  Francesco Potorti`  <pot@gnu.org>
+       * textprop.c (Ftext_properties_at, Fnext_char_property_change)
+       (Fprevious_char_property_change)
+       (Fnext_single_char_property_change)
+       (Fprevious_single_char_property_change, Fnext_property_change)
+       (Fnext_single_property_change, Fprevious_property_change)
+       (Fprevious_single_property_change, Fadd_text_properties)
+       (Fput_text_property, Fset_text_properties)
+       (Fremove_text_properties, Fremove_list_of_text_properties)
+       (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
 
-       * s/sol2-8.h: New file.
+2003-01-14  Kim F. Storm  <storm@cua.dk>
 
-2002-11-14  Kim F. Storm  <storm@cua.dk>
+       * process.h (struct Lisp_Process): New member plist replaces old
+       member private_vars.  All uses changed.
 
-       * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
-       dependency on `risky-local-variable' and the :propertize form.
+       * process.c: Reworked 2003-01-12 change -- call a plist a plist!
+       (QCplist): Rename from QCvars.  Change all uses.
+       (Fprocess_plist): Replaces Fprocess_variable.  Simplified.
+       (Fset_process_plist): Replaces Fset_process_variable.  Simplify.
+       (syms_of_process): Intern, staticpro, defsubr these.
+       (Fmake_network_process): Describe :plist arg.  Remove :vars arg.
 
-2002-11-12  Stefan Monnier  <monnier@cs.yale.edu>
+2003-01-14  Francesco Potort\e,Al\e(B  <pot@gnu.org>
 
-       * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
+       * m/delta.h: Remove (obsolete).
 
-       * syntax.c (scan_sexps_forward): Undo last patch.
-       Use a more obvious fix: check eob before updating the syntax table.
+2003-01-13  Francesco Potort\e,Al\e(B  <pot@gnu.org>
 
-2002-11-09  Stefan Monnier  <monnier@cs.yale.edu>
+       * fileio.c (Fdelete_directory, Fdelete_file): Document the
+       behaviour in front of symlinks.
+       (Fdelete_file): Raise an error on directories.
 
-       * syntax.c (scan_sexps_forward): Update syntax table before reading
-       a char rather than after so we don't update the table past eob.
+2003-01-13  Dave Love  <fx@gnu.org>
 
-2002-11-09  Dave Love  <fx@gnu.org>
+       * fns.c (Freverse): Use QUIT.
 
-       * buffer.c (Fset_buffer_major_mode): Fix last change.
+2003-01-13  Richard M. Stallman  <rms@gnu.org>
 
-       * regex.c (regexec): Fix pmatch declaration.
+       * minibuf.c (minibuffer_completion_contents):
+       Error if point is inside prompt.
 
-       * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
+       * keyboard.c (command_loop_1): Don't redisplay directly
+       if there's a post-command-hook.
 
-       * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
-       to self-inserting characters.
-       (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
+       * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
+       (Fdo_auto_save): Add gcpros around Ffile_name_directory.
 
-       * coding.c (Vtranslation_table_for_input): New.
-       (syms_of_coding): DEFVAR it.
+2003-01-12  Kim F. Storm  <storm@cua.dk>
 
-2002-11-08  Juanma Barranquero  <lektu@terra.es>
+       * process.h (struct Lisp_Process): New member private_vars.
 
-       * w32term.c (w32_draw_fringe_bitmap): Remove unused variable window.
+       * process.c (QCvars): New variable.
+       (syms_of_process): Intern and staticpro it.
+       (Fset_process_contact): Removed function.
+       (Fprocess_variable, Fset_process_variable): New functions.
+       (syms_of_process): Defsubr them.
+       (Fstart_process): Initialize private_vars plist to nil.
+       (Fmake_network_process): New arg :vars to setup the private
+       variables for new network process.
+       (server_accept_connection): Copy server's private variables to
+       client process.
 
-2002-11-08  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+       * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
+       crashes).  Code rewritten and simplified.  Now directly aligns the
+       pointer and recalculates pure_bytes_used, rather than aligning the
+       size and adjusting the pointer.
 
-       * process.c (Fformat_network_address): Remove unused locals p,
-       cp, and i.
+2003-01-11  Kim F. Storm  <storm@cua.dk>
 
-2002-11-06  Dave Love  <fx@gnu.org>
+       * process.c (Fset_process_contact): New function.
+       (syms_of_process): defsubr it.
+       (make-network-process): Update doc.
 
-       * buffer.c (Qset_buffer_major_mode_hook): New.
-       (Fset_buffer_major_mode): Use it.
+2003-01-10  Andreas Schwab  <schwab@suse.de>
 
-2002-11-06  Richard M. Stallman  <rms@gnu.org>
+       * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
+       Reported by Berthold Gunreben <b.gunreben@web.de>.
 
-       * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
-       and stop_polling.
+2003-01-10  Dave Love  <fx@gnu.org>
 
-       * process.c (wait_reading_process_input):
-       Test POLLING_PROBLEM_IN_SELECT, not hpux.
-       Avoid initialization for auto Lisp_Object var.
+       * composite.c (syms_of_composite): Make composition_hash_table weak.
 
-       * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
+2003-01-09  Kim F. Storm  <storm@cua.dk>
 
-       * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
+       * process.c (Fmake_network_process): Convert new port number
+       to host byte order for `:service t' case.  From Mario Lang.
 
-2002-11-05  Richard M. Stallman  <rms@gnu.org>
+2003-01-08  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
 
-       * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
+       * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
+       instead of XtAppProcessEvent.
 
-       * callint.c (Fcall_interactively): New local filter_specs.
-       (Fcall_interactively): Check for progn as well as let.
-       Add a gcpro.
-       (Qprogn): New variable.
-       (syms_of_callint): Staticpro and init Qprogn.
+       * xterm.c (handle_one_xevent): New function.
+       (x_dispatch_event): New function.
+       (XTread_socket): Call handle_one_xevent.
 
-2002-11-04  John Paul Wallington  <jpw@shootybangbang.com>
+       * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
 
-       * lread.c (Feval_buffer): Doc fix.
+       * xmenu.c (Fx_popup_menu): If popping up at mouse position,
+       call XQueryPointer to get coordinates.
+       (popup_get_selection): Do not set popup_activated_flag to zero,
+       let popup_deactivate_callback do that.  Needed for Motif.
+       Call x_dispatch_event instead of XtDispatchEvent.
+       (xmenu_show): Calculate root coordinate from frame top/left position.
 
-2002-11-04  Dave Love  <fx@gnu.org>
+2003-01-08  Kim F. Storm  <storm@cua.dk>
 
-       * keyboard.c (read_char): Always translate iff
-       Vkeyboard_translate_table is a char table and c is valid.
+       * process.c (server_accept_connection): Fix recording of new
+       connection's local address in :local property of contact info.
+       (Fmake_network_process): Record local network address for new
+       client processes in :local property of contact info.
+       (format-network-address): Add arg OMIT-PORT.  Change callers.
 
-       * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
-       and fix C types.
+2003-01-07  Dave Love  <fx@gnu.org>
 
-2002-11-03  Stefan Monnier  <monnier@cs.yale.edu>
+       * Makefile.in (fns.o): Depend on coding.h.
 
-       * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
+2003-01-07  Markus Rost  <rost@math.ohio-state.edu>
 
-       * editfns.c (get_pos_property): Don't hardcode Qfield.
+       * minibuf.c (Fread_variable): Doc fix.
 
-       * keyboard.c (adjust_point_for_property): Handle `display' prop on
-       overlays.  Also handle `invisible' prop.
+       * eval.c (Fuser_variable_p): Doc change.  For custom variables,
+       use the same test as for custom-variable-p.
 
-2002-11-02  Stefan Monnier  <monnier@cs.yale.edu>
+2003-01-05  Richard M. Stallman  <rms@gnu.org>
 
-       * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
-       (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
+       * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
+       Count LAST_LINE_MISFIT in scroll margin for end of window.
+       Move label too_near_end before setting SCROLL_MARGIN_POS.
+       Set LAST_LINE_MISFIT before jumping there.
 
-2002-11-01  Andreas Schwab  <schwab@suse.de>
+       * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
+       scroll_conservatively case.  If scrolling that much doesn't change
+       STARTP, move it down one line.
 
-       * editfns.c (Fmessage): Revert last change to properly handle %%.
+       * xdisp.c (redisplay_window): Pass last_line_misfit arg to
+       try_scrolling.  Make it 1 after make_cursor_line_fully_visible fails.
 
-2002-11-01  Stefan Monnier  <monnier@cs.yale.edu>
+       * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
+       selected frame.
 
-       * xmenu.c (unuse_menu_items): New fun.
-       (menu_items_inuse): New var.
-       (syms_of_xmenu): Initialize it.
-       (init_menu_items): Use it to detect re-entrance.
-       (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
-       (Fx_popup_menu): Remove spurious XSETFRAME.
+       * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
+       (syms_of_keymap): staticpro them.
+       (Fapropos_internal): Initialize them and clear them out.
+       Don't GCPRO them.
 
-       * editfns.c (find_field): Make an exception for nil fields.
+       * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
+       Doc fixes.
 
-2002-11-01  Dave Love  <fx@gnu.org>
+       * lisp.h: New misc type Lisp_Save_Value.
+       (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
+       (XSAVE_VALUE): New macro.
+       (struct Lisp_Save_Value): New data type.
+       (union Lisp_Misc): Add u_save_value alternative.
+       (make_save_value): Declared.
 
-       * m/gec63.h: Deleted.
+       * alloc.c (make_save_value): New function.
 
-2002-10-31  Dave Love  <fx@gnu.org>
+       * xterm.c (x_catch_errors): Save dpy using make_save_value.
+       (x_catch_errors_unwind): Call XSync.
 
-       * xterm.c (XTread_socket): Fix last change.
-       (xaw_scroll_callback): Cast call_data to long to avoid warning.
+2003-01-01  Richard M. Stallman  <rms@gnu.org>
 
-2002-10-31  Stefan Monnier  <monnier@cs.yale.edu>
+       * window.c (window_scroll_pixel_based): Partially undo last change.
 
-       * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
+       * keyboard.c (command_loop_1): Call adjust_point_for_property
+       in direct action cases for Qforward_char and Qbackward_char.
+       Set already_adjusted so it won't be done twice.
 
-2002-10-30  Stefan Monnier  <monnier@cs.yale.edu>
+2002-12-30  Richard Dawe  <rich@phekda.freeserve.co.uk>  (tiny change)
 
-       * editfns.c (overlays_around, get_pos_property): New funs.
-       (find_field): Use them.
-       Also be careful not to modify POS before its last use.
-       (Fmessage): Don't Fformat if there's nothing to format.
+       * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
+       type definition of size_t.
 
-2002-10-30  Dave Love  <fx@gnu.org>
+2003-01-02  Steven Tamm  <steventamm@mac.com>
 
-       * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
-       [HAVE_PTY_H]; Include pty.h.
+       * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
+       distinguish Carbon GUI builds from X11 builds on darwin.
 
-       * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
+2002-12-30  Steven Tamm  <steventamm@mac.com>
 
-       * xterm.c (Qeql): Declare.
-       (Vx_keysym_table): New.
-       (syms_of_xterm): Initialize it.
-       (XTread_socket): Use it.  Deal with ASCII keysyms.
-       (XSetIMValues) [HAVE_X11R6]: Prototype.
+       * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
+       to default to t.
 
-       * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
-       (lispy_kana_keys): Comment out.
-       (make_lispy_event) [XK_kana_A]: Comment out.
-       (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
-       Fix sprintf call.
+2002-12-29  Francesco Potort\e,Al\e(B  <pot@gnu.org>
 
-       * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
-       regexp.h change).
-       (TERMINFO, LIBS_TERMCAP): Define.
+       * data.c (Fstring_to_number, Fminus): Better English in doc strings.
 
-       * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
-       (bcmp): Define conditional on HAVE_BCMP.
-       (NO_SIOCTL_H): Don't define.
-       (TIOCSIGSEND): Don't make conditional on IRIX6.
+2002-12-28  Steven Tamm  <steventamm@mac.com>
 
-       * s/sol2-5.h: Don't include strings.h.
-       (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
+       * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
+       allow building in a different directory than source.  Uses some
+       GNU Make extensions, but there is no other make on Mac OS X.
 
-       * s/irix6-0.h (IRIX6): Don't define.
-       (bcopy, bcmp, bzero): Don't undef.
+2002-12-26  Francesco Potort\e,Al\e(B  <pot@gnu.org>
 
-       * s/irix6-5.h: Don't include strings.h.
-       (IRIX6): Don't define.
-       (bcopy, bcmp, bzero): Don't undef.
+       * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
+       (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
+       (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
+       (Fstring_to_number): Mention the returned value in the doc strings.
 
-       * syntax.c (Fforward_comment): Doc fix.
+2002-12-23  Richard M. Stallman  <rms@gnu.org>
 
-2002-10-29  Kim F. Storm  <storm@cua.dk>
+       * buffer.c (syms_of_buffer) <scroll-up-aggressively>
+       <scroll-down-aggressively>: Doc fix.
 
-       * process.c (Fsignal_process): Allow PROCESS to be specified by
-       name in addition to pid (as integer or string).
+       * xmenu.c (parse_single_submenu): Use individual keymap's prompt
+       string as pane name, if there is one.
+       (set_frame_menubar): Save menu_items_n_panes from each call to
+       parse_single_submenu and use it when calling digest_single_submenu.
 
-2002-10-28  Harald Maier  <Harald.Maier.BW@t-online.de>  (tiny change)
+       * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
+       Don't try to make last line fully visible if it is past end of window.
 
-       * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
-       environments.
+2002-12-22  Steven Tamm  <steventamm@mac.com>
 
-2002-10-27  Kim F. Storm  <storm@cua.dk>
+       * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
+       (mac_menu_show): Add support for hierarchical popup menus.
+       (add_menu_item): Remove indentation support.
+       (fill_submenu, fill_menu): Create hierarchical menus
+       instead of using indentation.
 
-       * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
+2002-12-22  Richard M. Stallman  <rms@gnu.org>
 
-       * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
+       * xdisp.c (try_cursor_movement): Don't call try_window here.
+       (redisplay_window): Never redisplay minibuffer when inactive.
 
-       * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
+       * window.c (select_window_1): Undo 9/21 change.
 
-       * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
+2002-12-22  Steven Tamm  <steventamm@mac.com>
 
-2002-10-26  Richard M. Stallman  <rms@gnu.org>
+       * macterm.c (XTread_socket): Call KeyTranslate for control and
+       meta to deal correctly shifted non-alpha characters, like C-S-5
+       being treated like C-%.  Does not look for shift key to deal
+       with masking off control-key with mac-reverse-ctrl-meta.
 
-       * editfns.c (Fformat): Detect invalid format letters for floats.
+2002-12-21  Richard M. Stallman  <rms@gnu.org>
 
-2002-10-25  Kenichi Handa  <handa@m17n.org>
+       * xmenu.c (popup_get_selection): Now static.  New arg DO_TIMERS.
+       If it is non-nil, run timers.  Use an unwind-protect to requeue
+       the events that were read ahead.
+       (popup_get_selection_unwind): New subroutine.
+       (popup_get_selection_queue): File-scope variable now holds that queue.
+       (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
+       (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
+       Use an unwind-protect to pop down the dialog box.
+       (xdialog_show_unwind): New subroutine implements that.
 
-       * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
-       (x_set_title): Likewise.
+       * xdisp.c (row_containing_pos): Change exit test using last_y.
+       (try_window_id): Abort if row_containing_pos returns null.
 
-2002-10-25  Juanma Barranquero  <lektu@terra.es>
+       * lread.c (load_error_handler): New function.
+       (Fload): Handle errors in Fsubstitute_in_file_name.
+       Don't expect Fsignal to return.
 
-       * macgui.h:
-       * w32gui.h: Remove definition of XColor.
+       * eval.c: Errors and throws work right with interrupt blocking.
+       (struct catchtag): New elt interrupt_input_blocked.
+       (unwind_to_catch): Restore interrupt_input_blocked from saved value.
+       (internal_catch, Fcondition_case, internal_condition_case)
+       (internal_condition_case_1, internal_condition_case_2): Save it.
+       (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
 
-       * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
+       * editfns.c (Fformat): Add parens.
 
-2002-10-24  Kim F. Storm  <storm@cua.dk>
+       * dired.c (file_name_completion): Fix that change.
+       Delete special quit-handling code; just use QUIT.
 
-       * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
-       Callers changed (supply dummy arg).
+2002-12-21  Tak Ota  <Takaaki.Ota@am.sony.com>  (tiny change)
 
-       * lisp.h (get_window_cursor_type): Update prototype.
+       * dired.c (file_name_completion): Close directory on error
+       just as in directory_files_internal.
 
-       * w32term.c (x_display_and_set_cursor): Get active_cursor from
-       get_window_cursor_type to track system caret.
+2002-12-19  David Kastrup  <David.Kastrup@t-online.de>
 
-2002-10-24  Kim F. Storm  <storm@cua.dk>
+       * window.c (Fset_window_configuration): Set old_point to correct
+       value when new_current_buffer == current_buffer.
 
-       * process.c (Fformat_network_address): New function.
-       (syms_of_process): Defsubr it.
-       (list_processes_1): Use it to format :local/:remote address if
-       service/host is not set; before emacs would crash in that case.
-       (Fmake_network_process): Don't use Ffind_operation_coding_system
-       to setup coding system if host or service is not set.
+2002-12-17  Ben Key  <bkey1@tampabay.rr.com>
 
-2002-10-23  Juanma Barranquero  <lektu@terra.es>
+       Revisited my earlier fix for the following entry in etc/PROBLEMS:
+       "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
+       or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
 
-       Patch suggested by Jay Finger <jay_finger@hotmail.com>.
+       These changes were in part based upon suggestions made by Peter
+       'Luna' Runestig [peter@runestig.com].
 
-       * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
-       COLORREF.
+       * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
+       g_b_init_get_token_information, g_b_init_lookup_account_sid,
+       g_b_init_get_sid_identifier_authority ): Add several static
+       global variables.
 
-       * macgui.h:
-       * w32gui.h: Add definition of XColor.
+       * w32.c (globals_of_w32): New function.  Used to initialize those
+       global variables that must always be initialized on startup even
+       when the global variable initialized is non zero.  Its primary
+       purpose at this time is to set the global variables
+       g_b_init_is_windows_9x, g_b_init_open_process_token,
+       g_b_init_get_token_information, g_b_init_lookup_account_sid, and
+       g_b_init_get_sid_identifier_authority to 0 on startup.
+       Called from main.
 
-       * macfns.c:
-       * w32fns.c:
-       * xfaces.c: Remove definition of XColor.
+       * w32.c (is_windows_9x): Perform initialization only if
+       g_b_init_is_windows_9x is equal to 0.  On initialization set
+       g_b_init_is_windows_9x equal to 1.
 
-2002-10-22  Stefan Monnier  <monnier@cs.yale.edu>
+       * w32.c (open_process_token): Perform initialization only if
+       g_b_init_open_process_token is equal to 0.  On initialization set
+       g_b_init_open_process_token equal to 1.
 
-       * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
+       * w32.c (get_token_information): Perform initialization only if
+       g_b_init_get_token_information is equal to 0.  On initialization
+       set g_b_init_get_token_information equal to 1.
 
-       * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
-       Only ignore truly dedicated windows.  For UNSHOW_BUFFER, delete the
-       window if it is dedicated.
-       (Fshrink_window): Add preserve_before as was done for enlarge_window.
-       (Vspecial_display_function): Update docstring.
+       * w32.c (lookup_account_sid): Perform initialization only if
+       g_b_init_lookup_account_sid is equal to 0.  On initialization
+       set g_b_init_lookup_account_sid equal to 1.
 
-       * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
-       (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
-       (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
+       * w32.c (get_sid_identifier_authority): Perform initialization
+       only if g_b_init_get_sid_identifier_authority is equal to 0.
+       On initialization set g_b_init_get_sid_identifier_authority equal to 1.
 
-2002-10-21  Stefan Monnier  <monnier@cs.yale.edu>
+       * w32fns.c (globals_of_w32fns): New function. Used to initialize
+       those global variables that must always be initialized on startup
+       even when the global variable initialized is non zero.
+       Its primary purpose at this time is to initialize the global variable
+       track_mouse_event_fn.
 
-       * casefiddle.c (casify_region): Don't treat a prefix char as part
-       of a word when at the beginning.
+       * w32fns.c (w32_wnd_proc):  Remove initialization of
+       track_mouse_event_fn from the handler for the WM_SETFOCUS message.
 
-2002-10-17  Juanma Barranquero  <lektu@terra.es>
+       * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
 
-       * lread.c (syms_of_lread): Fix typos.
+       * w32menu.c (globals_of_w32menu):  New function. Used to
+       initialize those global variables that must always be initialized
+       on startup even when the global variable initialized is non zero.
+       Its primary purpose at this time is to initialize the global
+       variables get_menu_item_info and set_menu_item_info.
 
-2002-10-17  Dave Love  <fx@gnu.org>
+       * w32menu.c (initialize_frame_menubar): Remove initialization of
+       get_menu_item_info and set_menu_item_info.
 
-       * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
+       * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
 
-2002-10-16  Richard M. Stallman  <rms@gnu.org>
+       * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
+       Declare them.
 
-       * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
+       * emacs.c (main): Call globals_of_w32 prior to calling
+       init_environment if WINDOWSNT is defined.  Call globals_of_w32fns
+       and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
+       is defined.
 
-2002-10-14  Juanma Barranquero  <lektu@terra.es>
+       * w32term.c (x_update_window_begin): Fix Windows API error
+       detected by BoundsChecker.  Test to determine if
+       w32_system_caret_hwnd is NULL prior to attempting to use
+       SendMessage to send the WM_EMACS_HIDE_CARET message to it.
 
-       * w16select.c (syms_of_win16select): Fix docstring for
-       `selection-coding-system'.
+       * w32term.c (x_update_window_end): Fix Windows API error
+       detected by BoundsChecker.  Test to determine if
+       w32_system_caret_hwnd is NULL prior to attempting to use
+       SendMessage to send the WM_EMACS_SHOW_CARET message to it.
 
-       * w32select.c (syms_of_w32select): Likewise.
+2002-12-17  Kenichi Handa  <handa@m17n.org>
 
-2002-10-14  Stefan Monnier  <monnier@cs.yale.edu>
+       * coding.c (coding_system_require_warning): New variable.
+       (syms_of_coding): DEFVAR it.
 
-       * syntax.c (scan_lists): Don't get fooled by a symbol ending with
-       a backslash-quoted char.
-       (scan_lists, scan_sexps_forward): Pacify the compiler.
+       * coding.h (coding_system_require_warning): Extern it.
 
-2002-10-13  Richard M. Stallman  <rms@gnu.org>
+       * fileio.c (choose_write_coding_system): Even if
+       Vcoding_system_for_write is non-nil, if
+       coding_system_require_warning is nonzero, call
+       Vselect_safe_coding_system_function.
 
-       * window.c (window_scroll): Set immediate_quit.
+2002-12-17  Markus Rost  <rost@math.ohio-state.edu>
 
-       * print.c (print): When backquote form is the car of a list,
-       output in old style.  Use old_backquote_output to output all
-       comma forms inside it in old style too.
+       * Makefile.in (lisp, shortlisp): Add cus-face and timer.
+       (lisp): Add font-core.
 
-       * buffer.h (struct buffer): Move `undo_list' down below `name'.
+2002-12-13  Stefan Monnier  <monnier@cs.yale.edu>
 
-2002-10-11  Markus Rost  <rost@math.ohio-state.edu>
+       * textprop.c (text_read_only): New arg `propval'.
+       (get_char_property_and_overlay): Remove unused var `next_overlay'.
+       (verify_interval_modification): Use text_read_only's new arg.
 
-       * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
-       batch mode).
+2002-12-13  Kenichi Handa  <handa@m17n.org>
 
-       * lread.c (Fload): Doc fix (load-suffixes).
+       * coding.c (Funencodable_char_position): Set pend correctly.
 
-2002-10-10  Steven Tamm  <steventamm@mac.com>
+2002-12-12  Jason Rumney  <jasonr@gnu.org>
 
-       * macterm.c (syms_of_macterm, mac_get_mouse_btn):
-       Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
-       Also switch the default to Qnil from Qt.
+       * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
+       (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
+       Be more careful about when help_events are generated.
 
-2002-10-08  Kenichi Handa  <handa@m17n.org>
+2002-12-12  Steven Tamm  <steventamm@mac.com>
 
-       * coding.c (code_convert_region): When we need more GAP for
-       conversion, pay attention to the case that coding->produced is not
-       greater than coding->consumed.
+       * macterm.c (mac_check_for_quit_char): Correctly set the
+       modifiers of the event to 0.
+       * mac.c (sys_select): Duplicate rfds before calling select to
+       ensure that rfds survive the while loop.
 
-2002-10-07  Richard M. Stallman  <rms@gnu.org>
+2002-12-11  Kim F. Storm  <storm@cua.dk>
 
-       * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
+       * xdisp.c (try_window_id): Don't call set_cursor_from_row if
+       row_containing_pos returned NULL.
 
-2002-10-06  Andrew Choi  <akochoi@shaw.ca>
+2002-12-10  Steven Tamm  <steventamm@mac.com>
 
-       * macmenu.c (mac_menu_show): Add j to count menu items; match
-       menu_item_selection to it to find selected item.
+       * mac.c (sys_read): Fix sys_read to not call select if IO is
+       non-blocking.
+       (sys_select): Fix sys_select to not use a timeout larger than
+       the one given.
 
-2002-10-06  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+2002-12-10  Juanma Barranquero  <lektu@terra.es>
 
-       * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
-       cases.  The correct fix is to pass ReparentNotify to Xt.
-       The shell widget interprets ConfigureNotify differently depending
-       on if it has been reparented or not.
+       * editfns.c (Fformat): Use alloca, not _alloca.
 
-2002-10-05  Markus Rost  <rost@math.ohio-state.edu>
+2002-12-09  Richard M. Stallman  <rms@gnu.org>
 
-       * editfns.c (Fformat_time_string): Doc fix.
+       * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
+       as the last thing.
 
-2002-10-05  John Paul Wallington  <jpw@shootybangbang.com>
+2002-12-09  Dave Love  <fx@gnu.org>
 
-       * fns.c (Flength): Doc fix.
+       * s/sol2-8.h: Removed.  (Not necessary.)
 
-2002-10-04  Stefan Monnier  <monnier@cs.yale.edu>
+2002-12-09  Matthew Swift  <swift@alum.mit.edu>
 
-       * keyboard.c (keyremap): New struct.
-       (read_key_sequence): Use it: globally replace keytran_foo with
-       keytran.foo and fkey_foo with fkey.foo.  Rename temp vars
-       keytran_next and fkey_next to just `next'.
+       * editfns.c (Fformat): Handle precision in string conversion
+       specifiers like libc functions do (ie, print at most that many
+       characters).
 
-2002-10-04  Steven Tamm  <steventamm@mac.com>
+2002-12-08  Richard M. Stallman  <rms@gnu.org>
 
-       * macterm.c (keycode_to_xkeysym_table): Change return to be
-       treated like an X keysym.
+       * xdisp.c (row_containing_pos): Check more carefully
+       whether charpos is really in the row before returning it.
 
-2002-10-03  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+2002-12-07  Steven Tamm  <steventamm@mac.com>
 
-       * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
-       and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
-       This is to also handle x/y changes that occur because of a resize.
+       * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
 
-2002-10-02  John Paul Wallington  <jpw@shootybangbang.com>
+       * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
+       each stack frame.  This may change as it could be time consuming.
 
-       * frame.c (Vdelete_frame_functions): New variable.
-       (syms_of_frame): Initialize and defvar it.
-       (Fdelete_frame): Use it instead of delete-frame-hook.  Don't run
-       it when frame's `tooltip' parameter is non-nil.
+       * macterm.c (mac_check_for_quit_char, quit_char_comp)
+       (init_quit_char_handler, mac_determine_quit_char_modifiers)
+       (mac_initialize): Add code to check for pressing of quit_char
+       in the OS event queue.
 
-       * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
+       * mac.c (sys_select): Call mac_check_for_quit_char every second
+       while blocking on select.
 
-       * w32fns.c (x_create_tip_frame): Likewise.
+       * mac.c (sys_read): Use sys_select to test for input first
+       before calling read, to allow C-g to break.
 
-       * macfns.c (x_create_tip_frame): Likewise.
+2002-12-07  Richard M. Stallman  <rms@gnu.org>
 
-2002-09-30  Kenichi Handa  <handa@m17n.org>
+       * minibuf.c (Fcompleting_read): Doc fix.
 
-       * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
-       -1 before calling ccl_driver.
+       * lread.c (syms_of_lread) <load-history>: Doc fix.
 
-       * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
-       Only when it is non-nil, handle composition sequence.
-       (setup_coding_system) <0>: Don't force composition handling.
+       * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
 
-       * Makefile.in (lisp, shortlisp): Add utf-16.elc
+       * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
+       autoload.
 
-2002-09-29  Richard M. Stallman  <rms@gnu.org>
+       * data.c (Fdefalias): Record in load-history redefining an autoload.
 
-       * search.c (Freplace_match): Adjust match data for the substitution
-       just made in the buffer.
+       * alloca.c: Undo ifdef change accidentally made on 12-04.
 
-       * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
-       (redisplay_internal): Use them.  Do RESUME_POLLING at end of function.
+2002-12-06  Francesco Potorti`  <pot@gnu.org>
 
-2002-09-27  Richard M. Stallman  <rms@gnu.org>
+       * xfns.c (png_load): Avoid double gamma correction for PNG images.
 
-       * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
-       (read_char): Use them.  Do all exits thru the end of the function.
+2002-12-04  Richard M. Stallman  <rms@gnu.org>
 
-2002-09-27  Kenichi Handa  <handa@etl.go.jp>
+       * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
 
-       * xfaces.c (try_font_list): Pay attention to the case that FAMILY
-       is nil.
+       * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
 
-2002-09-26  Richard M. Stallman  <rms@gnu.org>
+       * alloca.c: Don't use #error.
 
-       * regex.h (__restrict_arr): Don't define if already defined.
+2002-12-03  Dave Love  <fx@gnu.org>
 
-       * coding.c (run_pre_post_conversion_on_str):
-       Save and restore Vdeactivate_mark.
+       * buffer.c (Qucs_set_table_for_input): New.
+       (Fget_buffer_create): Use it.
+       (Qset_buffer_major_mode_hook): Deleted.
+       (Fset_buffer_major_mode): Revert previous change.
+       (init_buffer_once): Intern ucs-set-table-for-input.
+       (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
+       Add &Qucs_set_table_for_input.
 
-2002-09-26  John Paul Wallington  <jpw@shootybangbang.com>
+2002-12-03  Andreas Schwab  <schwab@suse.de>
 
-       * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
+       * callint.c (Fcall_interactively): Use next_event only if less
+       than key_count.
 
-2002-09-26  Kenichi Handa  <handa@etl.go.jp>
+2002-12-02  Andrew Choi  <akochoi@shaw.ca>
 
-       * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY.  If it is
-       nonzero, try face's family at first.  Otherwise try FAMILY at first.
-       (choose_face_font): If C is a single byte char or latin-1, call
-       try_font_list with PREFER_FACE_FAMILY 1.
+       * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
+       names to 255 characters.
 
-2002-09-21  Richard M. Stallman  <rms@gnu.org>
+       * macterm.c (XTread_socket): If all frames have been collapsed,
+       expand the first one before handling drag-and-drop events.
 
-       * window.c (select_window_1): Don't select frame.
-       Set frame's selected window only when frame itself is selected.
-       (Fselect_window): Doc fix.
+       * s/darwin.h (GETPGRP_NO_ARG): Delete.  Replaced by GETPGRP_VOID,
+       which is detected by autoconf.
 
-2002-09-18  Kim F. Storm  <storm@cua.dk>
+2002-12-01  Steven Tamm  <steventamm@mac.com>
 
-       * process.c (make-network-process): Doc fix (there is no
-       network-server-log-function hook).
+       * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
+       offset in two hints table to allow prebinding to be redone and
+       allow the executable to be stripped.
 
-2002-09-18  Richard M. Stallman  <rms@gnu.org>
+2002-11-29  Dave Love  <fx@gnu.org>
 
-       * print.c (print): Clear out the unused parts of Vprint_number_table.
-       (syms_of_print): Doc fix for `print-number-table'.
+       * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
+       already provided.
 
-       * unexelf.c (unexec): Undo previous change.
+2002-11-29  Richard M. Stallman  <rms@gnu.org>
 
-2002-09-17  Andreas Schwab  <schwab@suse.de>
+       * xdisp.c (start_display): Check more intelligently for
+       whether the line is continued.
+       (move_it_vertically_backward): Clear it->continuation_lines_width.
 
-       * m/alpha.h [LINUX]: Don't define DATA_START.
+2002-11-28  Dave Love  <fx@gnu.org>
 
-2002-09-16  Dave Love  <fx@gnu.org>
+       * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
+       * s/alliant.h, s/altos.h: Deleted.  (Unused/empty.)
 
-       * unexelf.c (unexec): Deal with .got, reinstating change from
-       25-08-1999.
+2002-11-27  Steven Tamm  <steventamm@mac.com>
 
-2002-09-13  Richard M. Stallman  <rms@gnu.org>
+       * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
+       more descriptive error output from lread.c:Fload upon most require
+       cycles during boostrapping.
 
-       * s/sol2-6.h (UNEXEC): Comment out definition.
+2002-11-27  Jason Rumney  <jasonr@gnu.org>
 
-       * unexsol.c (unexec): Don't downcase first letter of error msg.
+       * fileio.c (Finsert_file_contents): Give a more appropriate error
+       for files bigger than 2Gb when off_t is 32 bit.
 
-       * xfaces.c (Fcolor_supported_p): Just one arg is required.
+       * dired.c (Ffile_attributes): Don't return negative file sizes for
+       files bigger than 2Gb when off_t is 32 bit.
 
-2002-09-12  Markus Rost  <rost@math.ohio-state.edu>
+2002-11-27  Dave Love  <fx@gnu.org>
 
-       * unexsol.c: Include buffer.h, charset.h, coding.h.
+       * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
 
-2002-09-11  Richard M. Stallman  <rms@gnu.org>
+       * systty.h: Don't conditionally define GETPGRP_NO_ARG.
+       Test GETPGRP_VOID instead.
+       [BSD_TERMIOS]: Remove definitions (never used).
 
-       * unexsol.c: Don't use report_file_error; do it by hand
-       using dlerror.
+       * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
+       Don't define.
+       (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
 
-       * process.c (wait_reading_process_input, both versions):
-       Before calling turn_on_atimers, call stop_polling.
+       * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
 
-       * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
+2002-11-25  Jason Rumney  <jasonr@gnu.org>
 
-       * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
-       we go to too_near_end, call clear_glyph_matrix.
-       (redisplay_window): After make_cursor_line_fully_visible,
-       call clear_glyph_matrix and bypass `goto done'.
+       * w32.c (sys_write): Avoid non-blocking mode, which is not fully
+       supported.
 
-       * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
-       and we have non-toolkit scroll bars, return nil for scroll-bar-width.
+2002-11-25  Dave Love  <fx@gnu.org>
 
-2002-09-10  Richard M. Stallman  <rms@gnu.org>
+       * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
 
-       * fileio.c (Fdo_auto_save): Catch error making directory.
-       Only call push_message if we need to.
-       At the same time, make an unwind-protect to pop it.
-       Rename local message_p to old_message_p.
-       (do_auto_save_make_dir, do_auto_save_eh): New functions.
-       (do_auto_save_unwind): Don't call pop_message.
+       * Makefile.in (TEMACS_LDFLAGS): Update last change.
 
-       local_request 1.
-       (syms_of_xselect): Intern and staticpro QUTF8_STRING.
+2002-11-25  Andreas Schwab  <schwab@suse.de>
 
-       * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
+       * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
 
-       * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
+2002-11-24  Steven Tamm  <steventamm@mac.com>
 
-2002-08-13  Richard M. Stallman  <rms@gnu.org>
+       * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
+       determine the size of pointers alloced in unexed space instead
+       of using possibly invalid emacs_zone pointers.  This fixes the
+       binary incompatibility problems caused by updates to libSystem.B.
 
-       * minibuf.c (Fminibufferp): New function.
-       (syms_of_minibuf): Defsubr it.
-       (Fminibuffer_prompt_end): Handle non-minibuffers specially.
+2002-11-24  Richard M. Stallman  <rms@gnu.org>
 
-2002-08-13  Gerd Moellmann  <gerd.moellmann@t-online.de>
+       * search.c (Fstring_match): Doc fix.
 
-       * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
+       * callint.c (Fcall_interactively): If a command fails because
+       `*' detects a read-only buffer, but RECORD_FLAG is set,
+       record it anyway if the args don't actually do tty input.
 
-2002-08-12  Richard M. Stallman  <rms@gnu.org>
+2002-11-22  Dave Love  <fx@gnu.org>
 
-       * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
-       [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
-       (WSTOPSIG, WTERMSIG): Define each one independently if not defined
-       already.
+       * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
 
-       * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
+       * keyboard.c (interrupt_signal): Provide forward declaration.
+       (kbd_buffer_store_event): Don't declare interrupt_signal.
 
-2002-08-11  Andrew Choi  <akochoi@shaw.ca>
+       * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
 
-       * macterm.c (XTmouse_position): Check wp with is_emacs_window.
-       (Vmac_pass_command_to_system): New variable.
-       (Vmac_pass_control_to_system): New variable.
-       (do_mouse_moved): Check wp with is_emacs_window.
-       (XTread_socket): Check window_ptr with is_emacs_window.
-       Call FrontNonFloatingWindow instead of FrontWindow.  Send keydown
-       events back to Mac Toolbox for processing, depending on values of
-       Vmac_pass_command_to_system and Vmac_pass_control_to_system.
-       (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
-       Vmac_pass_control_to_system.
+2002-11-21  Richard M. Stallman  <rms@gnu.org>
 
-2002-08-10  Kenichi Handa  <handa@etl.go.jp>
+       * eval.c (interactive_p): Skip any number of bytecode
+       and special form frames, in any order.
 
-       * coding.c (unencodable_char_position): New function.
-       (Funencodable_char_position): New function.
-       (syms_of_coding): Defsubr Funencodable_char_position.
+2002-11-20  Jason Rumney  <jasonr@gnu.org>
 
-2002-08-10  Andrew Choi  <akochoi@shaw.ca>
+       * w32fns.c (convert_mono_to_color_image): New function.
+       (xbm_load, xbm_load_image): Use it when foreground or background
+       is explicitly set.
 
-       * mac.c (sys_select) [MAC_OSX]: New function.
+2002-11-19  Dave Love  <fx@gnu.org>
 
-       * macterm.c (MakeMeTheFrontProcess): New function.
-       (mac_initialize): Call MakeMeTheFrontProcess.
+       * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
 
-       * s/darwin.h: Define select to sys_select.
+2002-11-18  Jason Rumney  <jasonr@gnu.org>
 
-2002-08-09  Richard M. Stallman  <rms@gnu.org>
+       * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
+       (XPutPixel): Swap blue and red.
+       (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
+       (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
+       (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
+       (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
 
-       * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
+2002-11-18  Dave Love  <fx@gnu.org>
 
-2002-08-09  Gerd Moellmann  <gerd.moellmann@t-online.de>
+       * m/orion105.h (HAVE_ALLOCA): Don't define.
 
-       * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
-       end of the buffer.
+       * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
 
-2002-08-08  Ken Raeburn  <raeburn@mit.edu>
+       * m/intel386.h: Don't include alloca.h or define alloca.
 
-       * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
+       * m/ia64.h: Don't include alloca.h, stdlib.h.  Don't declare
+       malloc, realloc, calloc.
 
-       * puresize.h (BASE_PURESIZE): Increase to 910000.
+       * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
+       (bcmp): Don't define.
 
-2002-08-08  Kenichi Handa  <handa@etl.go.jp>
+       * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
 
-       * coding.c (Ffind_operation_coding_system): For write-region, if
-       VISIT is a filename, make it the target.
+       * m/amdahl.h: Don't define LIB_STANDARD.
 
-2002-08-07  Richard M. Stallman  <rms@gnu.org>
+       * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
 
-       * alloc.c (mark_object): Detect long lists for debugging.
-       (mark_object_loop_halt): New variable.
+       * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
 
-       * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
+       * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
+       Don't include alloca.h.
 
-       * data.c (Fmake_variable_frame_local): Doc fix.
+       * s/aix3-2.h (HAVE_FSYNC): Don't define.
 
-2002-08-01  David Ponce  <david@dponce.com>
+       * regex.c (_GNU_SOURCE): Don't define.
 
-       * w32menu.c (local_heap, local_alloc, local_free): New macros.
-       (malloc_widget_value, free_widget_value)
-       (w32_free_submenu_strings): Use them.
+       * process.c (_GNU_SOURCE): Don't define.
 
-       (push_submenu_start, push_submenu_end, push_left_right_boundary)
-       (push_menu_pane, push_menu_item, single_keymap_panes)
-       (single_menu_item, Fx_popup_menu, menubar_selection_callback)
-       (single_submenu, set_frame_menubar)
-       (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
+       * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
 
-       (Fx_popup_menu): Don't show pop up menu until preceding one is
-       actually cleaned up.  Moved UNGCPRO outside #ifdef HAVE_MENUS block.
+2002-11-18  Markus Rost  <rost@math.ohio-state.edu>
 
-       * w32menu.c: Changes adapted from xmenu.c
-       (set_frame_menubar): First parse all submenus,
-       then make widget_value trees from them.
-       Don't allocate any widget_value objects
-       until we are done with the parsing.
-       (parse_single_submenu): New function.
-       (digest_single_submenu): New function.
-       (single_submenu): Function deleted, replaced by those two.
+       * s/sol2-8.h: Include sol2-6.h.
 
-2002-08-04  Andrew Choi  <akochoi@shaw.ca>
+2002-11-18  Miles Bader  <miles@gnu.org>
 
-       * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
-       returns a valid window pointer before proceeding for keyDown and
-       autoKey events.
+       * dispextern.h (struct face): Add `overstrike' field.
+       * xterm.c (x_draw_glyph_string_foreground)
+       (x_draw_composite_glyph_string_foreground): Implement overstriking.
+       * xfaces.c (load_face_font): Set `face->overstrike' based on
+       result from choose_face_font.
+       (best_matching_font, choose_face_font): Add `needs_overstrike'
+       argument, and use it to return whether overstriking is desirable
+       for this face/font combo.
+       (set_font_frame_param: Pass new argument to choose_face_font.
 
-2002-08-03  Andrew Choi  <akochoi@shaw.ca>
+2002-11-17  Ben Key  <BKey1@tampabay.rr.com>
 
-       * macterm.c (USE_CARBON_EVENTS): New macro.
-       (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
-       (x_iconify_frame): Call CollapseWindow.
-       (Vmac_reverse_ctrl_meta): New variable.
-       (Vmac_wheel_button_is_mouse_2): New variable.
-       (init_mac_drag_n_drop): New function.
-       (mac_do_receive_drag): New function.
-       (mac_handle_service_event): New function.
-       (init_service_handler): New function.
-       (mac_to_emacs_modifiers): New function.
-       (mac_event_to_emacs_modifiers): New function.
-       (mac_get_mouse_btn): New function.
-       (mac_convert_event_ref): New function.
-       (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
-       SendEventToEventTarget, mac_event_to_emacs_modifiers, and
-       mac_get_mouse_btn.
-       (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
+       This change is my fix for the following entry in etc/PROBLEMS:
+       "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
+       or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
 
-       * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
-       lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
-       (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
-       TOOL_BAR_EVENT for MAC_OS as well.
-       (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
-       as for WINDOWS_NT.
-       (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
+       * w32.c: Added wrapper functions around the win32 API functions
+       OpenProcessToken, GetTokenInformation, LookupAccountSid, and
+       GetSidIdentifierAuthority.  These wrapper functions serve two
+       purposes:
+       1.  They ensure that the wrapped function can never be called
+       when Emacs is running on an operating system on which they are
+       not supported (Microsoft Windows 95 / 98 / ME).
+       2.  They call the wrapped functions via function pointers rather
+       than calling them directly.  This avoids taking advantage of the
+       undocumented fact that although these functions are not supported
+       in the 9x branch of Microsoft Windows, the functions do exist in
+       the version of advapi32.dll that is found in the 9x branch of
+       Microsoft Windows.
 
-       * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
+       * w32.c (init_user_info): Replace the calls to the win32 API
+       functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
+       and GetSidIdentifierAuthority with calls to the newly added
+       wrapper functions.
 
-2002-08-03  Gerd Moellmann  <gerd.moellmann@t-online.de>
+       * w32.h: Added extern declarations for the following functions:
+       syms_of_w32term, syms_of_w32fns, syms_of_w32select,
+       syms_of_w32menu, and void syms_of_fontset.
 
-       * xdisp.c (forward_to_next_line_start): Fix a condition that
-       lead to a newline being skipped.
+       * w32fns.c (w32_wnd_proc): Add code to reinitialize the
+       function pointer track_mouse_event_fn in the handler for the
+       WM_SETFOCUS message.
 
-2002-08-02  Andrew Choi  <akochoi@shaw.ca>
+       * w32menu.c (initialize_frame_menubar): Add code to
+       reinitialize the function pointers set_menu_item_info and
+       get_menu_item_info.
 
-       * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
+2002-11-17  Ben Key  <BKey1@tampabay.rr.com>
 
-2002-08-01  Richard M. Stallman  <rms@gnu.org>
+       * sound.c: Added a partial implementation of play-sound-internal
+       for Microsoft Windows.  Added various #ifdef / #else / #endif
+       code blocks to separate the code that will compile under
+       Microsoft Windows from the code that is specific to Gnu/Linux.
+       Moved several blocks of code around to make this separation of code
+       into Windows compatible and Gnu/Linux compatible code blocks easier.
 
-       * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
+       * makefile.w32-in: Include sound.c and link with WinMM.lib.
 
-2002-07-31  Andrew Choi  <akochoi@shaw.ca>
+       * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
+       added support for play-sound-internal under Windows would be
+       included in the build of Emacs.
 
-       * macfns.c: #undef init_process before #define-ing it.
+2002-11-16  Jason Rumney  <jasonr@gnu.org>
 
-       * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
-       HAVE_CARBON is defined.
+       * w32fns.c (w32_load_system_font): Don't disable Cleartype.
 
-2002-07-31  Richard M. Stallman  <rms@gnu.org>
+       * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
 
-       * xmenu.c (set_frame_menubar): First parse all submenus,
-       then make widget_value trees from them.
-       Don't allocate any widget_value objects
-       until we are done with the parsing.
-       (parse_single_submenu): New function.
-       (digest_single_submenu): New function.
-       (single_submenu): Function deleted, replaced by those two.
+2002-11-15  Stefan Monnier  <monnier@cs.yale.edu>
 
-2002-07-30  Juanma Barranquero  <lektu@terra.es>
+       * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
+       (adjust_point_for_property): Move out of display and invisible even if
+       we were already inside before (in case a property was added while
+       we weren't looking).  Be more careful when handling invisible props.
+       Skip invisible text as if it really wasn't there at all.
 
-       * w32proc.c (syms_of_ntproc): Fix docstring of
-       `w32-get-true-file-attributes'.
+2002-11-15  Jason Rumney  <jasonr@gnu.org>
 
-2002-07-28  Richard M. Stallman  <rms@gnu.org>
+       * w32term.c (x_draw_image_foreground)
+       (w32_draw_image_foreground_1): Use standard copy and invert
+       operations to draw images.
 
-       * s/hpux8.h (HPUX8): Define this before including hpux.h.
-       (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
+       * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
+       depth of 1.
+       (xbm_read_bitmap_data): Invert bits as xbm is read in.
+       (XPutPixel): Don't invert bits here.
 
-       * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
+2002-11-15  Jason Rumney  <jasonr@gnu.org>
 
-       * keyboard.c (make_lispy_event):
-       Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
-       Explicitly clear up_modifier in event->modifiers.
+       * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
+       (w32_draw_image_foreground_1): Handle image masks.
+       (x_draw_image_glyph_string): Don't BitBlt transparently.
 
-2002-07-27  Richard M. Stallman  <rms@gnu.org>
+       * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
+       (x_from_xcolors): Adjust RGB values for W32.
+       (image_background, image_background_transparent)
+       (postprocess_image, x_to_xcolors, x_disable_image)
+       (x_build_heuristic_mask): Adapt for W32 and enable.
+       (x_create_x_image_and_pixmap): Mark images with palettes as such.
+       (xbm_load): Remove unused variable.
 
-       * xterm.h (FRAME_CURSOR_WIDTH): New macro.
+2002-11-14  Richard M. Stallman  <rms@gnu.org>
 
-       * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
-       for bar cursor.
+       * buffer.c (syms_of_buffer): Doc fix.
 
-2002-07-26  Kenichi Handa  <handa@etl.go.jp>
+2002-11-14  Dave Love  <fx@gnu.org>
 
-       * coding.c (detect_coding_iso2022): While checking a byte sequence
-       for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
-       it in the normal loop.
+       * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
 
-2002-07-24  Gerd Moellmann  <gerd.moellmann@t-online.de>
+       * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
+       * xmenu.c (unuse_menu_items, digest_single_submenu):
+       * xfns.c (x_put_x_image):
+       * xdisp.c (message2_nolog, set_message):
+       * undo.c (record_point):
+       * terminfo.c (tparam):
+       * syntax.c (scan_sexps_forward):
+       * scroll.c (calculate_scrolling, calculate_direct_scrolling):
+       * composite.c (update_compositions):
+       * cm.c (calccost, cmgoto):
+       * charset.c (c_string_width): Declare all args (per C99).
 
-       * xterm.c (expose_overlaps): New function.
-       (expose_window): Use it to fix the display of overlapping rows.
+       * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
 
-       * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
+       * lisp.h (get_specified_cursor_type, get_window_cursor_type):
+       Don't declare.
 
-2002-07-23  Ken Raeburn  <raeburn@gnu.org>
+       * emacs.c (main) [!VMS]: Avoid third arg.
 
-       * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
-       since it only depends on XUINT.
+       * fns.c (Fcopy_sequence): Doc fix.
+       (Fmap_char_table): Cast `call2'.
 
-       * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
-       EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
-       PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
-       Macros deleted.
+2002-11-14  Francesco Potorti`  <pot@gnu.org>
 
-       * mem-limits.h (start_of_data): If DATA_START is defined, prefer
-       its value over other approaches.
-       * sysdep.c (start_of_data): Don't define the function if a macro
-       form has been defined.
+       * s/sol2-8.h: New file.
 
-2002-07-23  Gerd Moellmann  <gerd.moellmann@t-online.de>
+2002-11-14  Kim F. Storm  <storm@cua.dk>
 
-       * xdisp.c (redisplay_updating_p): New variable.
-       (init_iterator): Don't free realized faces when
-       redisplay_updating_p is set.
-       (redisplay_internal): Set redisplay_updating_p while updating
-       the display.
+       * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
+       dependency on `risky-local-variable' and the :propertize form.
 
-2002-07-23  Richard M. Stallman  <rms@gnu.org>
+2002-11-12  Stefan Monnier  <monnier@cs.yale.edu>
 
-       * editfns.c (Fmessage): Treat "" like nil.
+       * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
 
-2002-07-23  Kenichi Handa  <handa@etl.go.jp>
+       * syntax.c (scan_sexps_forward): Undo last patch.
+       Use a more obvious fix: check eob before updating the syntax table.
 
-       * xdisp.c (face_before_or_after_it_pos):
-       Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
+2002-11-09  Stefan Monnier  <monnier@cs.yale.edu>
 
-2002-07-22  Juanma Barranquero  <lektu@terra.es>
+       * syntax.c (scan_sexps_forward): Update syntax table before reading
+       a char rather than after so we don't update the table past eob.
 
-       * callproc.c (init_callproc) [DOS_NT]:
-       Initialize Vshared_game_score_directory to nil.
-       (syms_of_callproc) [DOS_NT]: Likewise.
+2002-11-09  Dave Love  <fx@gnu.org>
 
-2002-07-22  Gerd Moellmann  <gerd.moellmann@t-online.de>
+       * buffer.c (Fset_buffer_major_mode): Fix last change.
 
-       * xdisp.c (display_line): Replace an abort with xassert.
+       * regex.c (regexec): Fix pmatch declaration.
 
-2002-07-21  Richard M. Stallman  <rms@gnu.org>
+       * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
 
-       * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
-       and END_UNCHANGED when setting buffer_unchanged_p.
-       Use current_matrix_up_to_date_p to decide whether to use
-       try_cursor_movement.
+       * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
+       to self-inserting characters.
+       (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
 
-       * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
+       * coding.c (Vtranslation_table_for_input): New.
+       (syms_of_coding): DEFVAR it.
 
-       * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
+2002-11-08  Juanma Barranquero  <lektu@terra.es>
 
-       * callproc.c (init_callproc): Set up Vshared_game_score_directory.
-       Set to nil if dir does not exist.
-       (syms_of_callproc): Init unconditionally and simply.
+       * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
+       window.
 
-       * buffer.c (Fbuffer_list): Doc fix.
+2002-11-08  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-2002-07-21  Ken Raeburn  <raeburn@gnu.org>
+       * process.c (Fformat_network_address): Remove unused locals p,
+       cp, and i.
 
-       * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
+2002-11-06  Dave Love  <fx@gnu.org>
 
-       * buffer.c (mmap_realloc): When shrinking, make sure number of
-       pages to unmap is rounded towards zero.
+       * buffer.c (Qset_buffer_major_mode_hook): New.
+       (Fset_buffer_major_mode): Use it.
 
-       * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
-       (XSETINT): Deleted.
+2002-11-06  Richard M. Stallman  <rms@gnu.org>
 
-       * m/att3b.h (XINT): Don't define.
-       (VALBITS, VALMASK, XTYPE): Deleted.
-       (DATA_SEG_BITS): Define.
-       * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
-       ARRAY_MARK_FLAG): Deleted.
-       (DATA_SEG_BITS): Define.
-       * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
-       (DATA_SEG_BITS): Define.
+       * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
+       and stop_polling.
 
-2002-07-20  Richard M. Stallman  <rms@gnu.org>
+       * process.c (wait_reading_process_input):
+       Test POLLING_PROBLEM_IN_SELECT, not hpux.
+       Avoid initialization for auto Lisp_Object var.
 
-       * print.c (print_error_message): New args CONTEXT and CALLER.
-       Calls changed.
+       * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
 
-       * lisp.h (print_error_message): Declare new args.
+       * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
 
-       * keyboard.c (cmd_error_internal): Pass Vsignaling_function
-       and CONTEXT to print_error_message, don't print them here.
-       For a Quit, don't use Vsignaling_function.
-       Call message_log_maybe_newline.
+2002-11-05  Richard M. Stallman  <rms@gnu.org>
 
-       * Makefile.in (xsmfns.o): Don't depend on lisp.h.
+       * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
 
-2002-07-20  Kim F. Storm  <storm@cua.dk>
+       * callint.c (Fcall_interactively): New local filter_specs.
+       (Fcall_interactively): Check for progn as well as let.
+       Add a gcpro.
+       (Qprogn): New variable.
+       (syms_of_callint): Staticpro and init Qprogn.
 
-       * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
+2002-11-04  John Paul Wallington  <jpw@shootybangbang.com>
 
-2002-07-19  Ken Raeburn  <raeburn@gnu.org>
+       * lread.c (Feval_buffer): Doc fix.
 
-       * bytecode.c (struct byte_stack): Pointers into byte string now
-       point to const.
-       * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
-       const.
-       * charset.h (BCOPY_SHORT): Source pointer now points to const.
-       * coding.c (encode_eol, detect_coding, detect_eol):
-       (decode_coding, encode_coding, detect_coding_system):
-       Source strings now treated as const.
-       (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
-       modify Lisp string contents.
-       * coding.h (decode_coding, encode_coding, detect_coding,
-       detect_eol): Declarations updated.
-       * composite.c (compose_chars_in_text): Treat Lisp string contents
-       as const.
-       * dispnew.c (safe_bcopy): Source pointer now points to const.
-       * lisp.h (STRING_COPYIN): New macro.
-       (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
-       (internal_with_output_to_temp_buffer): Declarations updated.
-       * print.c (temp_output_buffer_setup):
-       (internal_with_output_to_temp_buffer): Buffer name argument is now
-       pointer to const.
-       * sound.c (struct sound_device): Function pointer field "write"
-       buffer argument now points to const.
-       (vox_write): Buffer argument points to const.
-       * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
-       contents as const.
-       * sysdep.c (emacs_write): Buffer pointer now const.
-       * term.c (encode_terminal_code): Buffer pointer now const.
-       * xfaces.c (may_use_scalable_font_p): Argument now points to const.
-       (x_face_list_fonts, x_update_menu_appearance):
-       (hash_string_case_insensitive): Treat Lisp string contents as const.
+2002-11-04  Dave Love  <fx@gnu.org>
 
-2002-07-19  Juanma Barranquero  <lektu@terra.es>
+       * keyboard.c (read_char): Always translate iff
+       Vkeyboard_translate_table is a char table and c is valid.
 
-       * fileio.c (Ffile_name_as_directory): Fix argument name in docstring.
-       (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
+       * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
+       and fix C types.
 
-       * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
+2002-11-03  Stefan Monnier  <monnier@cs.yale.edu>
 
-       * fileio.c (syms_of_fileio): Likewise.
+       * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
 
-2002-07-18  Richard M. Stallman  <rms@gnu.org>
+       * editfns.c (get_pos_property): Don't hardcode Qfield.
 
-       * data.c (Fdefalias): Doc fix.
+       * keyboard.c (adjust_point_for_property): Handle `display' prop on
+       overlays.  Also handle `invisible' prop.
 
-2002-07-17  Dave Love  <fx@gnu.org>
+2002-11-02  Stefan Monnier  <monnier@cs.yale.edu>
 
-       * intervals.h (text_property_stickiness): Use P_.
+       * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
+       (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
 
-       * ccl.c: Remove `emacs' conditionals.
-       (ccl_backtrace_table): Fix size spec.
-       (ccl_driver): Fix type errors.
+2002-11-01  Andreas Schwab  <schwab@suse.de>
 
-2002-07-16  Ken Raeburn  <raeburn@gnu.org>
+       * editfns.c (Fmessage): Revert last change to properly handle %%.
 
-       * alloc.c (xstrdup, make_string, make_unibyte_string)
-       (make_multibyte_string, build_string): String pointer args now
-       point to const.
-       * charset.c (find_charset_in_text, c_string_width):
-       (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
-       * fileio.c (report_file_error):
-       * insdel.c (copy_text, count_size_as_multibyte, insert_1):
-       (count_combining_before, count_combining_after, insert_1_both):
-       (insert, insert_and_inherit, insert_string):
-       (insert_before_markers, insert_before_markers_and_inherit):
-       * lread.c (intern, oblookup, hash_string):
-       * minibuf.c (temp_echo_area_glyphs):
-       * search.c (fast_c_string_match_ignore_case):
-       * sysdep.c (emacs_open, set_file_times):
-       * xfaces.c (xstricmp):
-       * xdisp.c (store_frame_title, string_char_and_length):
-       (message_dolog, message2, message2_nolog, set_message): Likewise.
-       (set_message_1): Cast message string argument to const pointer.
-       * editfns.c (general_insert_function): Insertion function now
-       takes pointer to const for input data.
-       * charset.h (find_charset_in_text, c_string_width):
-       (parse_str_as_multibyte): Declarations updated.
-       * dispextern.h (xstricmp): Declaration updated.
-       * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
-       (count_size_as_multibyte, count_combining_before):
-       (count_combining_after, insert_1, insert_1_both, message_dolog):
-       (insert, insert_and_inherit, insert_before_markers)
-       (insert_before_markers_and_inherit, set_message, message2):
-       (message2_dolog, build_string, make_string, make_unibyte_string):
-       (make_multibyte_string, intern, oblookup, report_file_error):
-       (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
-       (emacs_open, xstrdup): Declarations updated.
-       * systime.h (set_file_times): Declaration updated.
+2002-11-01  Stefan Monnier  <monnier@cs.yale.edu>
 
-       * charset.c (find_charset_in_text, lisp_string_width): Use const
-       for pointer to lisp string data.
-       * charset.h (FETCH_STRING_CHAR_ADVANCE):
-       (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
-       * coding.c (Ffind_coding_systems_region_interval):
-       * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
-       (Fmake_directory_internal, Fdelete_directory):
-       (Ffile_name_absolute_p, Fwrite_region, double_dollars):
-       * fontset.c (font_family_registry, fs_query_fontset):
-       (list_fontsets):
-       * frame.c (Fframe_parameter):
-       * keyboard.c (cmd_error_internal):
+       * xmenu.c (unuse_menu_items): New fun.
+       (menu_items_inuse): New var.
+       (syms_of_xmenu): Initialize it.
+       (init_menu_items): Use it to detect re-entrance.
+       (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
+       (Fx_popup_menu): Remove spurious XSETFRAME.
+
+       * editfns.c (find_field): Make an exception for nil fields.
+
+2002-11-01  Dave Love  <fx@gnu.org>
+
+       * m/gec63.h: Deleted.
+
+2002-10-31  Dave Love  <fx@gnu.org>
+
+       * xterm.c (XTread_socket): Fix last change.
+       (xaw_scroll_callback): Cast call_data to long to avoid warning.
+
+2002-10-31  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
+
+2002-10-30  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * editfns.c (overlays_around, get_pos_property): New funs.
+       (find_field): Use them.
+       Also be careful not to modify POS before its last use.
+       (Fmessage): Don't Fformat if there's nothing to format.
+
+2002-10-30  Dave Love  <fx@gnu.org>
+
+       * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
+       [HAVE_PTY_H]; Include pty.h.
+
+       * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
+
+       * xterm.c (Qeql): Declare.
+       (Vx_keysym_table): New.
+       (syms_of_xterm): Initialize it.
+       (XTread_socket): Use it.  Deal with ASCII keysyms.
+       (XSetIMValues) [HAVE_X11R6]: Prototype.
+
+       * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
+       (lispy_kana_keys): Comment out.
+       (make_lispy_event) [XK_kana_A]: Comment out.
+       (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
+       Fix sprintf call.
+
+       * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
+       regexp.h change).
+       (TERMINFO, LIBS_TERMCAP): Define.
+
+       * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
+       (bcmp): Define conditional on HAVE_BCMP.
+       (NO_SIOCTL_H): Don't define.
+       (TIOCSIGSEND): Don't make conditional on IRIX6.
+
+       * s/sol2-5.h: Don't include strings.h.
+       (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
+
+       * s/irix6-0.h (IRIX6): Don't define.
+       (bcopy, bcmp, bzero): Don't undef.
+
+       * s/irix6-5.h: Don't include strings.h.
+       (IRIX6): Don't define.
+       (bcopy, bcmp, bzero): Don't undef.
+
+       * syntax.c (Fforward_comment): Doc fix.
+
+2002-10-29  Kim F. Storm  <storm@cua.dk>
+
+       * process.c (Fsignal_process): Allow PROCESS to be specified by
+       name in addition to pid (as integer or string).
+
+2002-10-28  Harald Maier  <Harald.Maier.BW@t-online.de>  (tiny change)
+
+       * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
+       environments.
+
+2002-10-27  Kim F. Storm  <storm@cua.dk>
+
+       * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
+
+       * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
+
+       * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
+
+       * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
+
+2002-10-26  Richard M. Stallman  <rms@gnu.org>
+
+       * editfns.c (Fformat): Detect invalid format letters for floats.
+
+2002-10-25  Kenichi Handa  <handa@m17n.org>
+
+       * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
+       (x_set_title): Likewise.
+
+2002-10-25  Juanma Barranquero  <lektu@terra.es>
+
+       * macgui.h:
+       * w32gui.h: Remove definition of XColor.
+
+       * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
+
+2002-10-24  Kim F. Storm  <storm@cua.dk>
+
+       * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
+       Callers changed (supply dummy arg).
+
+       * lisp.h (get_window_cursor_type): Update prototype.
+
+       * w32term.c (x_display_and_set_cursor): Get active_cursor from
+       get_window_cursor_type to track system caret.
+
+2002-10-24  Kim F. Storm  <storm@cua.dk>
+
+       * process.c (Fformat_network_address): New function.
+       (syms_of_process): Defsubr it.
+       (list_processes_1): Use it to format :local/:remote address if
+       service/host is not set; before emacs would crash in that case.
+       (Fmake_network_process): Don't use Ffind_operation_coding_system
+       to setup coding system if host or service is not set.
+
+2002-10-23  Juanma Barranquero  <lektu@terra.es>
+
+       Patch suggested by Jay Finger <jay_finger@hotmail.com>.
+
+       * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
+       COLORREF.
+
+       * macgui.h:
+       * w32gui.h: Add definition of XColor.
+
+       * macfns.c:
+       * w32fns.c:
+       * xfaces.c: Remove definition of XColor.
+
+2002-10-22  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
+
+       * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
+       Only ignore truly dedicated windows.  For UNSHOW_BUFFER, delete the
+       window if it is dedicated.
+       (Fshrink_window): Add preserve_before as was done for enlarge_window.
+       (Vspecial_display_function): Update docstring.
+
+       * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
+       (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
+       (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
+
+2002-10-21  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * casefiddle.c (casify_region): Don't treat a prefix char as part
+       of a word when at the beginning.
+
+2002-10-17  Juanma Barranquero  <lektu@terra.es>
+
+       * lread.c (syms_of_lread): Fix typos.
+
+2002-10-17  Dave Love  <fx@gnu.org>
+
+       * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
+
+2002-10-16  Richard M. Stallman  <rms@gnu.org>
+
+       * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
+
+2002-10-14  Juanma Barranquero  <lektu@terra.es>
+
+       * w16select.c (syms_of_win16select): Fix docstring for
+       `selection-coding-system'.
+
+       * w32select.c (syms_of_w32select): Likewise.
+
+2002-10-14  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * syntax.c (scan_lists): Don't get fooled by a symbol ending with
+       a backslash-quoted char.
+       (scan_lists, scan_sexps_forward): Pacify the compiler.
+
+2002-10-13  Richard M. Stallman  <rms@gnu.org>
+
+       * window.c (window_scroll): Set immediate_quit.
+
+       * print.c (print): When backquote form is the car of a list,
+       output in old style.  Use old_backquote_output to output all
+       comma forms inside it in old style too.
+
+       * buffer.h (struct buffer): Move `undo_list' down below `name'.
+
+2002-10-11  Markus Rost  <rost@math.ohio-state.edu>
+
+       * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
+       batch mode).
+
+       * lread.c (Fload): Doc fix (load-suffixes).
+
+2002-10-10  Steven Tamm  <steventamm@mac.com>
+
+       * macterm.c (syms_of_macterm, mac_get_mouse_btn):
+       Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
+       Also switch the default to Qnil from Qt.
+
+2002-10-08  Kenichi Handa  <handa@m17n.org>
+
+       * coding.c (code_convert_region): When we need more GAP for
+       conversion, pay attention to the case that coding->produced is not
+       greater than coding->consumed.
+
+2002-10-07  Richard M. Stallman  <rms@gnu.org>
+
+       * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
+
+2002-10-06  Andrew Choi  <akochoi@shaw.ca>
+
+       * macmenu.c (mac_menu_show): Add j to count menu items; match
+       menu_item_selection to it to find selected item.
+
+2002-10-06  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+
+       * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
+       cases.  The correct fix is to pass ReparentNotify to Xt.
+       The shell widget interprets ConfigureNotify differently depending
+       on if it has been reparented or not.
+
+2002-10-05  Markus Rost  <rost@math.ohio-state.edu>
+
+       * editfns.c (Fformat_time_string): Doc fix.
+
+2002-10-05  John Paul Wallington  <jpw@shootybangbang.com>
+
+       * fns.c (Flength): Doc fix.
+
+2002-10-04  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * keyboard.c (keyremap): New struct.
+       (read_key_sequence): Use it: globally replace keytran_foo with
+       keytran.foo and fkey_foo with fkey.foo.  Rename temp vars
+       keytran_next and fkey_next to just `next'.
+
+2002-10-04  Steven Tamm  <steventamm@mac.com>
+
+       * macterm.c (keycode_to_xkeysym_table): Change return to be
+       treated like an X keysym.
+
+2002-10-03  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+
+       * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
+       and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
+       This is to also handle x/y changes that occur because of a resize.
+
+2002-10-02  John Paul Wallington  <jpw@shootybangbang.com>
+
+       * frame.c (Vdelete_frame_functions): New variable.
+       (syms_of_frame): Initialize and defvar it.
+       (Fdelete_frame): Use it instead of delete-frame-hook.  Don't run
+       it when frame's `tooltip' parameter is non-nil.
+
+       * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
+
+       * w32fns.c (x_create_tip_frame): Likewise.
+
+       * macfns.c (x_create_tip_frame): Likewise.
+
+2002-09-30  Kenichi Handa  <handa@m17n.org>
+
+       * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
+       -1 before calling ccl_driver.
+
+       * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
+       Only when it is non-nil, handle composition sequence.
+       (setup_coding_system) <0>: Don't force composition handling.
+
+       * Makefile.in (lisp, shortlisp): Add utf-16.elc
+
+2002-09-29  Richard M. Stallman  <rms@gnu.org>
+
+       * search.c (Freplace_match): Adjust match data for the substitution
+       just made in the buffer.
+
+       * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
+       (redisplay_internal): Use them.  Do RESUME_POLLING at end of function.
+
+2002-09-27  Richard M. Stallman  <rms@gnu.org>
+
+       * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
+       (read_char): Use them.  Do all exits thru the end of the function.
+
+2002-09-27  Kenichi Handa  <handa@etl.go.jp>
+
+       * xfaces.c (try_font_list): Pay attention to the case that FAMILY
+       is nil.
+
+2002-09-26  Richard M. Stallman  <rms@gnu.org>
+
+       * regex.h (__restrict_arr): Don't define if already defined.
+
+       * coding.c (run_pre_post_conversion_on_str):
+       Save and restore Vdeactivate_mark.
+
+2002-09-26  John Paul Wallington  <jpw@shootybangbang.com>
+
+       * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
+
+2002-09-26  Kenichi Handa  <handa@etl.go.jp>
+
+       * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY.  If it is
+       nonzero, try face's family at first.  Otherwise try FAMILY at first.
+       (choose_face_font): If C is a single byte char or latin-1, call
+       try_font_list with PREFER_FACE_FAMILY 1.
+
+2002-09-21  Richard M. Stallman  <rms@gnu.org>
+
+       * window.c (select_window_1): Don't select frame.
+       Set frame's selected window only when frame itself is selected.
+       (Fselect_window): Doc fix.
+
+2002-09-18  Kim F. Storm  <storm@cua.dk>
+
+       * process.c (make-network-process): Doc fix (there is no
+       network-server-log-function hook).
+
+2002-09-18  Richard M. Stallman  <rms@gnu.org>
+
+       * print.c (print): Clear out the unused parts of Vprint_number_table.
+       (syms_of_print): Doc fix for `print-number-table'.
+
+       * unexelf.c (unexec): Undo previous change.
+
+2002-09-17  Andreas Schwab  <schwab@suse.de>
+
+       * m/alpha.h [LINUX]: Don't define DATA_START.
+
+2002-09-16  Dave Love  <fx@gnu.org>
+
+       * unexelf.c (unexec): Deal with .got, reinstating change from
+       25-08-1999.
+
+2002-09-13  Richard M. Stallman  <rms@gnu.org>
+
+       * s/sol2-6.h (UNEXEC): Comment out definition.
+
+       * unexsol.c (unexec): Don't downcase first letter of error msg.
+
+       * xfaces.c (Fcolor_supported_p): Just one arg is required.
+
+2002-09-12  Markus Rost  <rost@math.ohio-state.edu>
+
+       * unexsol.c: Include buffer.h, charset.h, coding.h.
+
+2002-09-11  Richard M. Stallman  <rms@gnu.org>
+
+       * unexsol.c: Don't use report_file_error; do it by hand
+       using dlerror.
+
+       * process.c (wait_reading_process_input, both versions):
+       Before calling turn_on_atimers, call stop_polling.
+
+       * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
+
+       * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
+       we go to too_near_end, call clear_glyph_matrix.
+       (redisplay_window): After make_cursor_line_fully_visible,
+       call clear_glyph_matrix and bypass `goto done'.
+
+       * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
+       and we have non-toolkit scroll bars, return nil for scroll-bar-width.
+
+2002-09-10  Richard M. Stallman  <rms@gnu.org>
+
+       * fileio.c (Fdo_auto_save): Catch error making directory.
+       Only call push_message if we need to.
+       At the same time, make an unwind-protect to pop it.
+       Rename local message_p to old_message_p.
+       (do_auto_save_make_dir, do_auto_save_eh): New functions.
+       (do_auto_save_unwind): Don't call pop_message.
+
+       * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
+
+       * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
+
+       * alloc.c (Fgarbage_collect): Use pop_message_unwind.
+
+       * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
+
+2002-09-10  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
+       (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
+       (re_match_2_internal): Be more careful with infinite loops.
+
+2002-09-10  Kim F. Storm  <storm@cua.dk>
+
+       * macros.c (end_kbd_macro): New function.
+       (Fend_kbd_macro): Use it.
+
+       * macros.h (end_kbd_macro): Declare extern.
+
+       * keyboard.c (Fdiscard_input): If defining keyboard macro,
+       end and save it instead of discarding it.
+
+2002-09-09  Markus Rost  <rost@math.ohio-state.edu>
+
+       * s/sol2-6.h: Fix typo.  Add comment.
+
+2002-09-09  Richard M. Stallman  <rms@gnu.org>
+
+       * regex.c (regnum_t): Use signed int, not unsigned int.
+
+       * s/sol2-6.h: New file.
+
+       * s/sol2-5.h (UNEXEC): Definition deleted.
+
+2002-09-08  Kim F. Storm  <storm@cua.dk>
+
+       * macros.c (executing_macro_index): Change type to EMACS_INT.
+       (syms_of_macros): DEFVAR_INT it  (needed by kmacro).
+
+       * macros.h (executing_macro_index): Change type to EMACS_INT.
+
+2002-09-06  Richard M. Stallman  <rms@gnu.org>
+
+       * casetab.c (set_case_table): Make canon table point to eqv table.
+
+2002-09-06  Juanma Barranquero  <lektu@terra.es>
+
+       * coding.c (syms_of_coding): Fix spacing.
+
+       * composite.c (Fcompose_region_internal)
+       (Fcompose_string_internal): Likewise.
+
+       * data.c (Flsh): Likewise.
+
+       * fontset.c (Fset_fontset_font): Likewise.
+
+       * macfns.c (Fx_server_max_request_size): Likewise.
+
+       * w16select.c (syms_of_win16select): Likewise.
+
+       * w32select.c (syms_of_w32select): Likewise.
+
+       * xselect.c (syms_of_xselect): Likewise.
+
+2002-09-05  Richard M. Stallman  <rms@gnu.org>
+
+       * regex.c (set_image_of_range_1): In no-TRANSLATE case,
+       call EXTEND_RANGE_TABLE and return a proper value.
+       (set_image_of_range): Don't call set_image_of_range_1
+       if no TRANSLATE or if range includes all of Latin-1.
+       Only call it for the Latin-1 part of the range.
+       For other cases, make two separate ranges,
+       one for the original specified characters and one for
+       their case-conversions.
+
+2002-09-04  Richard M. Stallman  <rms@gnu.org>
+
+       * s/sol2-5.h (UNEXEC): Use unexsol.o.
+
+       * window.c (displayed_window_lines): Correct for one-off bug
+       in HEIGHT on non-window displays.
+
+       * regex.c (set_image_of_range_1): New function.
+       (set_image_of_range): Use set_image_of_range_1 for Latin-1.
+       Return a value to indicate running out of memory.
+       (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
+       (extend_range_table_work_area): New subroutine.
+       (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
+       Different calling conventions, and used from set_image_of_range{,_1}.
+       (IMMEDIATE_QUIT_CHECK): Definitions moved.
+
+2002-09-04  Juanma Barranquero  <lektu@terra.es>
+
+       * makefile.w32-in: All dependencies updated.
+
+2002-09-01  Richard M. Stallman  <rms@gnu.org>
+
+       * unexsol.c: New file.
+
+       * xfns.c (Qbox): Declare external, don't define.
+
+       * xdisp.c (redisplay_window) <force-start case>:
+       If point is on semi-visible last line, reposition
+       it at previous line.
+
+       * alloc.c (display_malloc_warning): Use display-warning.
+       (malloc_warning_1): Function deleted.
+
+       * alloc.c [ALLOC_DEBUG]: #undef INLINE.
+
+       * lread.c (read1): Handle #! by skipping the line.
+
+2002-08-31  Richard M. Stallman  <rms@gnu.org>
+
+       * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
+       Don't include LDFLAGS.
+       (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
+
+2002-08-31  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
+       member of x_display_info unless we compile for some window system.
+
+2002-08-31  Kim F. Storm  <storm@cua.dk>
+
+       * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
+       (get_window_cursor_type): Don't use them.
+       (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
+
+2002-08-30  Kenichi Handa  <handa@etl.go.jp>
+
+       * xdisp.c (get_next_display_element): Fix previous change.
+
+2002-08-30  Andrew Choi  <akochoi@shaw.ca>
+
+       * macterm.c (expose_overlaps): New function (merge code from xterm.c).
+       (expose_window): Use it to fix the display of overlapping
+       rows (merge code from xterm.c).
+
+       * macfns.c (Qbox): Add extern declaration.
+
+2002-08-30  Juanma Barranquero  <lektu@terra.es>
+
+       * w32fns.c (Qbox): Make extern.
+       (syms_of_w32fns): Remove initialization of Qbox.
+
+2002-08-30  Rune Kleveland  <runekl@viewpoint.no>  (tiny change)
+
+       * xfns.c (Fx_open_connection): Fix error message.
+
+2002-08-30  Kim F. Storm  <storm@cua.dk>
+
+       The following changes consolidates the handling of the cursor
+       type in xdisp.c, moving duplicate code and functionality from
+       xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
+
+       * frame.h (enum text_cursor_kinds): Consolidated here.
+       Added DEFAULT_CURSOR value.
+       (struct frame) <desired_cursor, cursor_width>
+       <blink_off_cursor, blink_off_cursor_width>: New fields.
+       Consolidated from output_x, output_w32 and output_mac structs.
+       (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
+       (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
+
+       * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
+       Variables consolidated here.
+       (Valternate_cursor_type, Qalternate_cursor_type): New variables.
+       (Vcursor_in_non_selected_windows): Renamed from
+       cursor_in_non_selected_windows and changed to Lisp_Object.
+       (syms_of_xdisp): Define and staticpro new and moved variables.
+       (get_specified_cursor_type): Renamed from x_specified_cursor_type;
+       consolidated here.  Recognize Qhollow setting.
+       (set_frame_cursor_types): New function to set frame cursor types
+       based on the frame parameters.
+       (get_window_cursor_type): New function to calculate new cursor
+       type and width for the specified window.  Based on duplicated
+       code consolidated here.
+       Enhancements: cursor-in-non-selected-windows may be a cursor type,
+       check buffer-local alternate-cursor-type and blink-cursor-alist
+       before using built-in blink off methods.
+
+       * dispextern.h (cursor_in_non_selected_windows): Extern removed.
+
+       * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
+       (get_specified_cursor_type, get_window_cursor_type)
+       (set_frame_cursor_types): Added prototypes.
+
+       * macfns.c (x_specified_cursor_type): Removed.
+       (x_set_cursor_type): Use set_frame_cursor_types.
+       (Qbar, Qbox): Removed.
+       (syms_of_macfns): Don't intern or staticpro them.
+
+       * macterm.c (x_specified_cursor_type): Remove prototype.
+       (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
+       (x_display_and_set_cursor): Use get_window_cursor_type.
+       Remove unused local variables cursor_non_selected, active_cursor.
+       Redraw cursor if hbar cursor width changes.
+       (make_mac_frame): Set FRAME_DESIRED_CURSOR.
+
+       * macterm.h (enum text_cursor_kinds): Removed.
+       (struct output_mac) <current_cursor, desired_cursor, cursor_width>
+       <blink_off_cursor, blink_off_cursor_width>: Members removed.
+       (FRAME_DESIRED_CURSOR): Macro removed.
+
+       * w32fns.c (Vblink_cursor_alist): Removed.
+       (Qbar, Qhbar, Qbox, Qhollow): Removed.
+       (syms_of_w32fns): Don't intern, staticpro, or define them.
+       (x_specified_cursor_type): Removed.
+       (x_set_cursor_type): Use set_frame_cursor_types.
+
+       * w32term.c (x_specified_cursor_type): Remove prototype.
+       (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
+       (x_display_and_set_cursor): Use get_window_cursor_type.
+       Remove unused local variables cursor_off_state.
+       Redraw cursor if hbar cursor width changes.
+       Changed all occurrences of w32_highlight_frame to x_highlight_frame.
+
+       * w32term.h (enum text_cursor_kinds): Removed.
+       (struct output_w32) <current_cursor, desired_cursor, cursor_width>
+       <blink_off_cursor, blink_off_cursor_width>: Members removed.
+       (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
+       (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
+       (struct w32_display_info) <x_highlight_frame>: Renamed member from
+       w32_highlight_frame.
+
+       * xfns.c (Vblink_cursor_alist): Removed.
+       (Qbar, Qhbar, Qbox, Qhollow): Removed.
+       (syms_of_xfns): Don't intern, staticpro, or define them.
+       (x_specified_cursor_type): Removed.
+       (x_set_cursor_type): Use set_frame_cursor_types.
+
+       * xterm.c (x_specified_cursor_type): Remove prototype.
+       (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
+       (x_display_and_set_cursor): Use get_window_cursor_type.
+       Remove unused local variables cursor_off_state.
+       Redraw cursor if hbar cursor width changes.
+
+       * xterm.h (enum text_cursor_kinds): Removed.
+       (struct output_x) <current_cursor, desired_cursor, cursor_width>
+       <blink_off_cursor, blink_off_cursor_width>: Members removed.
+       (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
+       (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
+       (x_specified_cursor_type): Remove prototype.
+
+2002-08-28  Richard M. Stallman  <rms@gnu.org>
+
+       * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
+       FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
+       (Vblink_cursor_alist): New variable.
+       (syms_of_w32fns): Initialize and defvar it.
+       (x_specified_cursor_type): Recognize Qbox for filled box.
+       Exceptions are hollow boxes.
+       (Qbox, Qhollow): New variables.
+       (syms_of_w32fns): Initialize and staticpro them.
+
+       * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
+       New macros.
+       (struct w32_output): New fields blink_off_cursor,
+       blink_off_cursor_width.
+       (FRAME_CURSOR_WIDTH): New macro.
+
+       * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
+       and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
+
+       * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
+       for bar cursor.
+
+       * w32term.c (expose_overlaps): New function.
+       (expose_window): Use it to fix the display of overlapping rows.
+
+2002-08-28  Simon Josefsson  <jas@extundo.com>
+
+       * xfns.c (Fx_open_connection): Improve help when X connection
+       fails, xhost is insecure and xauth is better.
+
+2002-08-28  Juanma Barranquero  <lektu@terra.es>
+
+       * makefile.w32-in: Add missing dependencies on w32term.h and
+       composite.h.
+
+       * emacs.c (USAGE1): Add missing newline.
+
+2002-08-27  Andrew Choi  <akochoi@shaw.ca>
+
+       * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
+
+2002-08-27  Richard M. Stallman  <rms@gnu.org>
+
+       * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
+       FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
+       (Vblink_cursor_alist): New variable.
+       (syms_of_xfns): Initialize and defvar it.
+       (x_specified_cursor_type): Recognize Qbox for filled box.
+       Exceptions are hollow boxes.
+       (Qbox, Qhollow): New variables.
+       (syms_of_xfns): Initialize and staticpro them.
+
+       * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
+       New macros.
+       (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
+
+       * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
+       and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
+
+       * emacs.c (main): Handle --script.
+       (USAGE1): Mention --script.
+       (standard_args): Define sort order for --script.
+
+2002-08-27  Gerd Moellmann  <gerd.moellmann@t-online.de>
+
+       * xdisp.c (redisplay_updating_p): Variable removed.
+       (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
+       New variables.
+       (init_iterator): Don't free realized faces if
+       inhibit_free_realized_faces is set.
+       (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
+       (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
+       initialize Qinhibit_free_realized_faces.
+
+       * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
+       when iterator is adding glyphs to a glyph matrix.
+
+2002-08-27  Kenichi Handa  <handa@etl.go.jp>
+
+       * xdisp.c (get_next_display_element): In unibyte case, don't use
+       octal form for such eight-bit characters that can be converted to
+       multibyte char.
+
+2002-08-26  Kim F. Storm  <storm@cua.dk>
+
+       * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
+       and background colors.  From Joe Buehler (tiny change).
+
+2002-08-26  Miles Bader  <miles@gnu.org>
+
+       * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
+
+2002-08-25  Andrew Choi  <akochoi@shaw.ca>
+
+       * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
+       defined instead of MAC_OSX.
+
+       * s/darwin.h (select): Define select to sys_select only if
+       HAVE_CARBON is defined.
+       (HAVE_WORKING_VFORK): #undef it.  Define vfork to fork.
+       (DONT_REOPEN_PTY): #def it.
+
+       * macterm.c (XTread_socket): Remove code to call
+       SendEventToEventTarget for keys with command modifiers when
+       mac_command_key_is_meta is nil.
+
+2002-08-24  Andreas Schwab  <schwab@suse.de>
+
+       * eval.c (Fdefvar): Fix last change.
+
+2002-08-23  Richard M. Stallman  <rms@gnu.org>
+
+       * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
+       Record variables in load history as (defvar . VAR).
+       (Fdefvar): Don't record in load history if no initial value.
+       (Qdefvar): New variable.
+       (syms_of_eval): Init and staticpro it.
+
+       * lread.c (syms_of_lread): Doc fix.
+       (build_load_history): Use Fmember to see if a definition
+       is already in the Vload_history element.
+
+       * process.c (Fstart_process): Remove /: from program name.
+
+       * emacs.c (decode_env_path): Don't add /: if file name handler
+       has a `safe-magic' property.
+
+       * callproc.c (Fcall_process): Remove /: from program name.
+
+2002-08-23  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * regex.c (PATFETCH): Remove the translating fetch.
+       (PATFETCH_RAW): Rename to PATFETCH.
+       (set_image_of_range): New fun.
+       (SET_RANGE_TABLE_WORK_AREA): Use it.
+       (regex_compile): Don't translate the pattern chars so eagerly.
+       Only do it when inserting an `exactn' bytecode or when handling
+       a char-range.
+       (mutually_exclusive_p): Avoid empty statement.
+
+2002-08-22  Kim F. Storm  <storm@cua.dk>
+
+       * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
+       end up on a partially visible line; this reverts a specific part
+       of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
+       display error which has been reported several times now.
+       However it introduces the problem that changes was supposed to fix.
+       See my comments in the source if you want to debug this further.
+
+2002-08-20  Kenichi Handa  <handa@etl.go.jp>
+
+       * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
+
+2002-08-19  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * msdos.c (croak): Add `void' to definition.
+
+       * sysdep.c [MSDOS] (request_sigio, unrequest_sigio):
+       Don't define them, they are defined in msdos.c.
+
+       * mem-limits.h [MSDOS]: Declare etext.
+
+       * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
+       `const' since CORRECT_DIR_SEPS modifies its target.
+
+2002-08-19  Kim F. Storm  <storm@cua.dk>
+
+       * keyboard.c (Fclear_this_command_keys): Added optional arg
+       KEEP-RECORD to avoid clearing lossage when we just want to clear
+       the current key sequence (kmacro needs this).
+
+2002-08-19  Kenichi Handa  <handa@localhost>
+
+       * composite.c (run_composition_function): Call FUNC if it is fboundp.
+
+       * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
+       cons, return Qnil.
+
+2002-08-17  Richard M. Stallman  <rms@gnu.org>
+
+       * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
+
+       * sysdep.c [!VMS]: Include sys/files.h.
+
+       * editfns.c (save_restriction_restore): Defend from unchained marker.
+
+       * buffer.c (overlays_at): Handle extending vec uniformly.
+       (overlays_in): Handle extending vec from length 0 as in overlays_at.
+
+2002-08-15  Andrew Choi  <akochoi@shaw.ca>
+
+       * mac.c (init_mac_osx_environment): New function.
+
+       * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
+
+2002-08-14  Kim F. Storm  <storm@cua.dk>
+
+       * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
+       executing macro before appending to it (when used from Lisp).
+       (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
+       which is called prior to each iteration of macro (for kmacro.el).
+       (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
+
+       * lisp.h (Fexecute_kbd_macro): Update prototype.
+
+       * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
+
+2002-08-14  Kenichi Handa  <handa@etl.go.jp>
+
+       * xselect.c (QUTF8_STRING): New variable.
+       (symbol_to_x_atom): Pay attention to QUTF8_STRING.
+       (x_atom_to_symbol): Likewise.
+       (x_get_local_selection): New argument local_request.  If it is
+       nonzero, call handler_fn with the second arg nil.
+       (x_handle_selection_request): Call x_get_local_selection with
+       local_request 0.
+       (lisp_data_to_selection_data): Don't encode the string here.
+       (Fx_get_selection_internal): Call x_get_local_selection with
+       local_request 1.
+       (syms_of_xselect): Intern and staticpro QUTF8_STRING.
+
+       * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
+
+       * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
+
+2002-08-13  Richard M. Stallman  <rms@gnu.org>
+
+       * minibuf.c (Fminibufferp): New function.
+       (syms_of_minibuf): Defsubr it.
+       (Fminibuffer_prompt_end): Handle non-minibuffers specially.
+
+2002-08-13  Gerd Moellmann  <gerd.moellmann@t-online.de>
+
+       * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
+
+2002-08-12  Richard M. Stallman  <rms@gnu.org>
+
+       * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
+       [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
+       (WSTOPSIG, WTERMSIG): Define each one independently if not defined
+       already.
+
+       * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
+
+2002-08-11  Andrew Choi  <akochoi@shaw.ca>
+
+       * macterm.c (XTmouse_position): Check wp with is_emacs_window.
+       (Vmac_pass_command_to_system): New variable.
+       (Vmac_pass_control_to_system): New variable.
+       (do_mouse_moved): Check wp with is_emacs_window.
+       (XTread_socket): Check window_ptr with is_emacs_window.
+       Call FrontNonFloatingWindow instead of FrontWindow.  Send keydown
+       events back to Mac Toolbox for processing, depending on values of
+       Vmac_pass_command_to_system and Vmac_pass_control_to_system.
+       (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
+       Vmac_pass_control_to_system.
+
+2002-08-10  Kenichi Handa  <handa@etl.go.jp>
+
+       * coding.c (unencodable_char_position): New function.
+       (Funencodable_char_position): New function.
+       (syms_of_coding): Defsubr Funencodable_char_position.
+
+2002-08-10  Andrew Choi  <akochoi@shaw.ca>
+
+       * mac.c (sys_select) [MAC_OSX]: New function.
+
+       * macterm.c (MakeMeTheFrontProcess): New function.
+       (mac_initialize): Call MakeMeTheFrontProcess.
+
+       * s/darwin.h: Define select to sys_select.
+
+2002-08-09  Richard M. Stallman  <rms@gnu.org>
+
+       * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
+
+2002-08-09  Gerd Moellmann  <gerd.moellmann@t-online.de>
+
+       * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
+       end of the buffer.
+
+2002-08-08  Ken Raeburn  <raeburn@mit.edu>
+
+       * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
+
+       * puresize.h (BASE_PURESIZE): Increase to 910000.
+
+2002-08-08  Kenichi Handa  <handa@etl.go.jp>
+
+       * coding.c (Ffind_operation_coding_system): For write-region, if
+       VISIT is a filename, make it the target.
+
+2002-08-07  Richard M. Stallman  <rms@gnu.org>
+
+       * alloc.c (mark_object): Detect long lists for debugging.
+       (mark_object_loop_halt): New variable.
+
+       * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
+
+       * data.c (Fmake_variable_frame_local): Doc fix.
+
+2002-08-01  David Ponce  <david@dponce.com>
+
+       * w32menu.c (local_heap, local_alloc, local_free): New macros.
+       (malloc_widget_value, free_widget_value)
+       (w32_free_submenu_strings): Use them.
+
+       (push_submenu_start, push_submenu_end, push_left_right_boundary)
+       (push_menu_pane, push_menu_item, single_keymap_panes)
+       (single_menu_item, Fx_popup_menu, menubar_selection_callback)
+       (single_submenu, set_frame_menubar)
+       (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
+
+       (Fx_popup_menu): Don't show pop up menu until preceding one is
+       actually cleaned up.  Moved UNGCPRO outside #ifdef HAVE_MENUS block.
+
+       * w32menu.c: Changes adapted from xmenu.c
+       (set_frame_menubar): First parse all submenus,
+       then make widget_value trees from them.
+       Don't allocate any widget_value objects
+       until we are done with the parsing.
+       (parse_single_submenu): New function.
+       (digest_single_submenu): New function.
+       (single_submenu): Function deleted, replaced by those two.
+
+2002-08-04  Andrew Choi  <akochoi@shaw.ca>
+
+       * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
+       returns a valid window pointer before proceeding for keyDown and
+       autoKey events.
+
+2002-08-03  Andrew Choi  <akochoi@shaw.ca>
+
+       * macterm.c (USE_CARBON_EVENTS): New macro.
+       (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
+       (x_iconify_frame): Call CollapseWindow.
+       (Vmac_reverse_ctrl_meta): New variable.
+       (Vmac_wheel_button_is_mouse_2): New variable.
+       (init_mac_drag_n_drop): New function.
+       (mac_do_receive_drag): New function.
+       (mac_handle_service_event): New function.
+       (init_service_handler): New function.
+       (mac_to_emacs_modifiers): New function.
+       (mac_event_to_emacs_modifiers): New function.
+       (mac_get_mouse_btn): New function.
+       (mac_convert_event_ref): New function.
+       (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
+       SendEventToEventTarget, mac_event_to_emacs_modifiers, and
+       mac_get_mouse_btn.
+       (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
+
+       * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
+       lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
+       (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
+       TOOL_BAR_EVENT for MAC_OS as well.
+       (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
+       as for WINDOWS_NT.
+       (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
+
+       * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
+
+2002-08-03  Gerd Moellmann  <gerd.moellmann@t-online.de>
+
+       * xdisp.c (forward_to_next_line_start): Fix a condition that
+       lead to a newline being skipped.
+
+2002-08-02  Andrew Choi  <akochoi@shaw.ca>
+
+       * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
+
+2002-08-01  Richard M. Stallman  <rms@gnu.org>
+
+       * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
+
+2002-07-31  Andrew Choi  <akochoi@shaw.ca>
+
+       * macfns.c: #undef init_process before #define-ing it.
+
+       * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
+       HAVE_CARBON is defined.
+
+2002-07-31  Richard M. Stallman  <rms@gnu.org>
+
+       * xmenu.c (set_frame_menubar): First parse all submenus,
+       then make widget_value trees from them.
+       Don't allocate any widget_value objects
+       until we are done with the parsing.
+       (parse_single_submenu): New function.
+       (digest_single_submenu): New function.
+       (single_submenu): Function deleted, replaced by those two.
+
+2002-07-30  Juanma Barranquero  <lektu@terra.es>
+
+       * w32proc.c (syms_of_ntproc): Fix docstring of
+       `w32-get-true-file-attributes'.
+
+2002-07-28  Richard M. Stallman  <rms@gnu.org>
+
+       * s/hpux8.h (HPUX8): Define this before including hpux.h.
+       (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
+
+       * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
+
+       * keyboard.c (make_lispy_event):
+       Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
+       Explicitly clear up_modifier in event->modifiers.
+
+2002-07-27  Richard M. Stallman  <rms@gnu.org>
+
+       * xterm.h (FRAME_CURSOR_WIDTH): New macro.
+
+       * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
+       for bar cursor.
+
+2002-07-26  Kenichi Handa  <handa@etl.go.jp>
+
+       * coding.c (detect_coding_iso2022): While checking a byte sequence
+       for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
+       it in the normal loop.
+
+2002-07-24  Gerd Moellmann  <gerd.moellmann@t-online.de>
+
+       * xterm.c (expose_overlaps): New function.
+       (expose_window): Use it to fix the display of overlapping rows.
+
+       * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
+
+2002-07-23  Ken Raeburn  <raeburn@gnu.org>
+
+       * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
+       since it only depends on XUINT.
+
+       * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
+       EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
+       PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
+       Macros deleted.
+
+       * mem-limits.h (start_of_data): If DATA_START is defined, prefer
+       its value over other approaches.
+       * sysdep.c (start_of_data): Don't define the function if a macro
+       form has been defined.
+
+2002-07-23  Gerd Moellmann  <gerd.moellmann@t-online.de>
+
+       * xdisp.c (redisplay_updating_p): New variable.
+       (init_iterator): Don't free realized faces when
+       redisplay_updating_p is set.
+       (redisplay_internal): Set redisplay_updating_p while updating
+       the display.
+
+2002-07-23  Richard M. Stallman  <rms@gnu.org>
+
+       * editfns.c (Fmessage): Treat "" like nil.
+
+2002-07-23  Kenichi Handa  <handa@etl.go.jp>
+
+       * xdisp.c (face_before_or_after_it_pos):
+       Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
+
+2002-07-22  Juanma Barranquero  <lektu@terra.es>
+
+       * callproc.c (init_callproc) [DOS_NT]:
+       Initialize Vshared_game_score_directory to nil.
+       (syms_of_callproc) [DOS_NT]: Likewise.
+
+2002-07-22  Gerd Moellmann  <gerd.moellmann@t-online.de>
+
+       * xdisp.c (display_line): Replace an abort with xassert.
+
+2002-07-21  Richard M. Stallman  <rms@gnu.org>
+
+       * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
+       and END_UNCHANGED when setting buffer_unchanged_p.
+       Use current_matrix_up_to_date_p to decide whether to use
+       try_cursor_movement.
+
+       * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
+
+       * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
+
+       * callproc.c (init_callproc): Set up Vshared_game_score_directory.
+       Set to nil if dir does not exist.
+       (syms_of_callproc): Init unconditionally and simply.
+
+       * buffer.c (Fbuffer_list): Doc fix.
+
+2002-07-21  Ken Raeburn  <raeburn@gnu.org>
+
+       * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
+
+       * buffer.c (mmap_realloc): When shrinking, make sure number of
+       pages to unmap is rounded towards zero.
+
+       * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
+       (XSETINT): Deleted.
+
+       * m/att3b.h (XINT): Don't define.
+       (VALBITS, VALMASK, XTYPE): Deleted.
+       (DATA_SEG_BITS): Define.
+       * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
+       ARRAY_MARK_FLAG): Deleted.
+       (DATA_SEG_BITS): Define.
+       * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
+       (DATA_SEG_BITS): Define.
+
+2002-07-20  Richard M. Stallman  <rms@gnu.org>
+
+       * print.c (print_error_message): New args CONTEXT and CALLER.
+       Calls changed.
+
+       * lisp.h (print_error_message): Declare new args.
+
+       * keyboard.c (cmd_error_internal): Pass Vsignaling_function
+       and CONTEXT to print_error_message, don't print them here.
+       For a Quit, don't use Vsignaling_function.
+       Call message_log_maybe_newline.
+
+       * Makefile.in (xsmfns.o): Don't depend on lisp.h.
+
+2002-07-20  Kim F. Storm  <storm@cua.dk>
+
+       * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
+
+2002-07-19  Ken Raeburn  <raeburn@gnu.org>
+
+       * bytecode.c (struct byte_stack): Pointers into byte string now
+       point to const.
+       * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
+       const.
+       * charset.h (BCOPY_SHORT): Source pointer now points to const.
+       * coding.c (encode_eol, detect_coding, detect_eol):
+       (decode_coding, encode_coding, detect_coding_system):
+       Source strings now treated as const.
+       (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
+       modify Lisp string contents.
+       * coding.h (decode_coding, encode_coding, detect_coding,
+       detect_eol): Declarations updated.
+       * composite.c (compose_chars_in_text): Treat Lisp string contents
+       as const.
+       * dispnew.c (safe_bcopy): Source pointer now points to const.
+       * lisp.h (STRING_COPYIN): New macro.
+       (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
+       (internal_with_output_to_temp_buffer): Declarations updated.
+       * print.c (temp_output_buffer_setup):
+       (internal_with_output_to_temp_buffer): Buffer name argument is now
+       pointer to const.
+       * sound.c (struct sound_device): Function pointer field "write"
+       buffer argument now points to const.
+       (vox_write): Buffer argument points to const.
+       * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
+       contents as const.
+       * sysdep.c (emacs_write): Buffer pointer now const.
+       * term.c (encode_terminal_code): Buffer pointer now const.
+       * xfaces.c (may_use_scalable_font_p): Argument now points to const.
+       (x_face_list_fonts, x_update_menu_appearance):
+       (hash_string_case_insensitive): Treat Lisp string contents as const.
+
+2002-07-19  Juanma Barranquero  <lektu@terra.es>
+
+       * fileio.c (Ffile_name_as_directory): Fix argument name in docstring.
+       (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
+
+       * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
+
+       * fileio.c (syms_of_fileio): Likewise.
+
+2002-07-18  Richard M. Stallman  <rms@gnu.org>
+
+       * data.c (Fdefalias): Doc fix.
+
+2002-07-17  Dave Love  <fx@gnu.org>
+
+       * intervals.h (text_property_stickiness): Use P_.
+
+       * ccl.c: Remove `emacs' conditionals.
+       (ccl_backtrace_table): Fix size spec.
+       (ccl_driver): Fix type errors.
+
+2002-07-16  Ken Raeburn  <raeburn@gnu.org>
+
+       * alloc.c (xstrdup, make_string, make_unibyte_string)
+       (make_multibyte_string, build_string): String pointer args now
+       point to const.
+       * charset.c (find_charset_in_text, c_string_width):
+       (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
+       * fileio.c (report_file_error):
+       * insdel.c (copy_text, count_size_as_multibyte, insert_1):
+       (count_combining_before, count_combining_after, insert_1_both):
+       (insert, insert_and_inherit, insert_string):
+       (insert_before_markers, insert_before_markers_and_inherit):
+       * lread.c (intern, oblookup, hash_string):
+       * minibuf.c (temp_echo_area_glyphs):
+       * search.c (fast_c_string_match_ignore_case):
+       * sysdep.c (emacs_open, set_file_times):
+       * xfaces.c (xstricmp):
+       * xdisp.c (store_frame_title, string_char_and_length):
+       (message_dolog, message2, message2_nolog, set_message): Likewise.
+       (set_message_1): Cast message string argument to const pointer.
+       * editfns.c (general_insert_function): Insertion function now
+       takes pointer to const for input data.
+       * charset.h (find_charset_in_text, c_string_width):
+       (parse_str_as_multibyte): Declarations updated.
+       * dispextern.h (xstricmp): Declaration updated.
+       * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
+       (count_size_as_multibyte, count_combining_before):
+       (count_combining_after, insert_1, insert_1_both, message_dolog):
+       (insert, insert_and_inherit, insert_before_markers)
+       (insert_before_markers_and_inherit, set_message, message2):
+       (message2_dolog, build_string, make_string, make_unibyte_string):
+       (make_multibyte_string, intern, oblookup, report_file_error):
+       (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
+       (emacs_open, xstrdup): Declarations updated.
+       * systime.h (set_file_times): Declaration updated.
+
+       * charset.c (find_charset_in_text, lisp_string_width): Use const
+       for pointer to lisp string data.
+       * charset.h (FETCH_STRING_CHAR_ADVANCE):
+       (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
+       * coding.c (Ffind_coding_systems_region_interval):
+       * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
+       (Fmake_directory_internal, Fdelete_directory):
+       (Ffile_name_absolute_p, Fwrite_region, double_dollars):
+       * fontset.c (font_family_registry, fs_query_fontset):
+       (list_fontsets):
+       * frame.c (Fframe_parameter):
+       * keyboard.c (cmd_error_internal):
        * keymap.c (Fdescribe_buffer_bindings):
        * lread.c (complete_filename_p, openp):
        * minibuf.c (Fminibuffer_complete_word):
        (decode_mode_spec_coding):
        * xterm.c (same_x_server): Likewise.
 
-       * buffer.c (reset_buffer_local_variables): Delete "#if 0"
-       settings of non-existent fields.
+       * buffer.c (reset_buffer_local_variables): Delete "#if 0"
+       settings of non-existent fields.
+
+       * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
+       copy a lisp value.
+
+       * lread.c (Fintern_soft): Use string macros instead of
+       Lisp_String fields.
+       * keyboard.c (echo_char, parse_modifiers_uncached):
+       (parse_solitary_modifier, Fexecute_extended_command): Likewise.
+       * textprop.c (validate_interval_range, interval_of): Likewise.
+
+       * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
+
+       * charset.h (FETCH_STRING_CHAR_ADVANCE)
+       (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
+       XSTRING()->size_byte.
+
+       * lisp.h (SDATA, SREF): Produce rvalue.
+       (SSET): New macro.
+       * alloc.c (make_event_array): Use SSET for storing into a string.
+       * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
+       a string.
+       * casefiddle.c (casify_object): Use SSET.
+       * charset.h (FETCH_STRING_CHAR_ADVANCE)
+       (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
+       address of string contents.
+       * data.c (Faref): Use SDATA.
+       (Faset): Use SDATA, SSET.
+       * dired.c (directory_files_internal): Use SSET.
+       * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
+       (Fread_file_name): Use SREF, SSET.
+       * fns.c (concat): Use SSET.
+       (concat, Fdelete): Use SDATA.
+       * insdel.c (insert_from_string_1): Use SDATA.
+       * keyboard.c (Fevent_convert_list): Use SREF.
+       * lread.c (Fload): Use SDATA, SSET.
+       * macfns.c (validate_x_resource_name): Use SSET.
+       * process.c (status_message): Use SSET.
+       * search.c (wordify): Use SDATA.
+       (Freplace_match): Use SREF.
+       * w32fns.c (validate_x_resource_name): Use SSET.
+       * xfns.c (validate_x_resource_name): Use SSET.
+       * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
+
+2002-07-16  Richard M. Stallman  <rms@gnu.org>
+
+       * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
+
+       * xdisp.c (reconsider_clip_changes):
+       Don't test prevent_redisplay_optimizations_p.
+       (redisplay_internal): Test prevent_redisplay_optimizations_p
+       along with clip_changed in some cases.
+       (try_window_id): Likewise.
+       (redisplay_window): New local var buffer_unchanged_p.
+
+       * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
+
+       * process.c (create_process): Test USG_SUBTTY_WORKS.
+       (process_send_signal): Clean up handling of GID.
+       Detect errors in ioctls meant to set GID.
+
+       * window.c (temp_output_buffer_show):
+       Don't set prevent_redisplay_optimizations_p.
+
+2002-07-15  Juanma Barranquero  <lektu@terra.es>
+
+       * eval.c (Fdefvaralias): Add docstring argument.
+
+2002-07-15  Ken Raeburn  <raeburn@gnu.org>
+
+       * lisp.h (STRING_INTERVALS): Produce rvalue.
+       (STRING_SET_INTERVALS): New macro.
+       * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
+       * fns.c (Fstring_as_multibyte): Likewise.
+       * intervals.c (balance_possible_root_interval, delete_interval)
+       (create_root_interval, copy_intervals_to_string): Likewise.
+       * textprop.c (set_text_properties): Likewise.  Use NULL_INTERVAL
+       instead of 0.
+
+2002-07-14  Ken Raeburn  <raeburn@gnu.org>
+
+       * lisp.h (STRING_SET_CHARS): New macro.
+       (SCHARS, SBYTES): Produce rvalues.
+       * dired.c (directory_files_internal): Use STRING_SET_CHARS.
+       * fns.c (concat): Likewise.
+       * lread.c (read_vector): Likewise.
+
+       * lisp.h (SMBP): Deleted.  All uses changed to STRING_MULTIBYTE.
+       (STRING_SET_UNIBYTE): New macro.
+       (SET_STRING_BYTES): Deleted.  Callers (all of which supplied a
+       length of -1) changed to use STRING_SET_UNIBYTE.
+       * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
+       casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
+       composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
+       dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
+       fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
+       keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
+       minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
+       sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
+       w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
+       w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
+       xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
+       STRING_BYTES or indirection changed to SCHARS, SBYTES,
+       STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
+       unchanged for now.
+
+2002-07-13  Kim F. Storm  <storm@cua.dk>
+
+       * keyboard.c (command_loop_1): Invert check on Vmemory_full.
+
+2002-07-12  Richard M. Stallman  <rms@gnu.org>
+
+       * fileio.c (Fwrite_region): Doc fix.
+
+       * print.c (print_error_message): Don't handle Vsignaling_function here.
+
+       * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
+       (command_loop_1): Avoid certain actions after memory-full error.
+
+       * eval.c (Fsignal): Don't call cancel_hourglass.
+       For a memory-full error, don't call Vsignal_hook_function
+       and don't set Vsignaling_function.
+
+       * process.c (process_send_signal): Add abort call.
+
+2002-07-11  Markus Rost  <rost@math.ohio-state.edu>
+
+       * keymap.c (Fkey_binding): Fix typo.
+
+2002-07-11  Richard M. Stallman  <rms@gnu.org>
+
+       * alloc.c (Vmemory_full): New variable.
+       (Vmemory_signal_data): Renamed from memory_signal_data.
+       Uses changed.
+       (syms_of_alloc): Defvar them.
+       (memory_full, buffer_memory_full): Set Vmemory_full.
+
+       * lisp.h (Vmemory_full): Add declaration.
+       (current_column, indented_beyond_p): Change declaration.
+
+       * indent.c (last_known_column): Declare as double, not float.
+       (current_column, current_column_1, string_display_width)
+       (position_indentation): Return `double'.
+       (indented_beyond_p): Arg `column' is `double'.  Callers changed.
+
+       * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
+       (back_to_previous_visible_line_start)
+       (reseat_at_next_visible_line_start, next_element_from_buffer):
+       Use `double', not `float', when calling indented_beyond_p.
+
+       * s/hpux11.h (BROKEN_SA_RESTART): Defined.
+
+       * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
+
+2002-07-11  Juanma Barranquero  <lektu@terra.es>
+
+       * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
+       * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
+       * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
+       * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
+       * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
+       * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
+
+2002-07-10  Juanma Barranquero  <lektu@terra.es>
+
+       * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE. All callers
+       changed.
+
+2002-07-09  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * data.c (Fdefalias): Add an optional `docstring' argument.
+       (set_internal, Fsetq_default): Use XCAR/XCDR.
+
+       * composite.c (HASH_VALUE, HASH_KEY):
+       * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
+
+2002-07-09  Kenichi Handa  <handa@etl.go.jp>
+
+       * callproc.c (Fcall_process): Fix previous change.
+
+2002-07-07  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
+       Add support for hash-tables.
+       (Ftry_completion): Return t even if the string appears multiple times.
+
+       * fns.c (Fnconc): Use XCDR.
+       (Fprovide): Use CONSP and XCDR.
+       (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
+       (HASH_TABLE_SIZE): Delete: moved to lisp.h.
+       (Fmake_hash_table): Accept `:size nil'.
+       (Fmakehash): Delete: moved to subr.el.
+       (syms_of_fns): Don't defsubr makehash.
+
+       * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
+       (HASH_TABLE_SIZE): Move from fns.c.
+
+2002-07-07  Richard M. Stallman  <rms@gnu.org>
+
+       * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
+       Instead just return 0 when there is something to be done.
+       (try_scrolling): If make_cursor_line_fully_visible returns 0,
+       retry scrolling as if cursor were off the bottom.
+       (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
+       return CURSOR_MOVEMENT_MUST_SCROLL.
+       (redisplay_window): If make_cursor_line_fully_visible returns 0,
+       go to try_to_scroll.
+
+       * buffer.c (Fbuffer_local_value): Store current value into its binding
+       so we get the up-to-date value for the binding that is loaded.
+
+       * eval.c (Fdefmacro): Doc fix.
+
+2002-07-05  Dave Love  <fx@gnu.org>
+
+       * keyboard.c (read_key_sequence): Set initial_idleness_start_time
+       correctly.
+
+       * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
+       (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
+       (ccl_driver): Add cases for CCL_LookupIntConstTbl,
+       CCL_LookupCharConstTbl.
+       (syms_of_ccl): Defvar translation-hash-table-vector.
+
+2002-07-05  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+
+       * xdisp.c: Remove unused variable `face'.
+
+2002-07-04  Juanma Barranquero  <lektu@terra.es>
+
+       * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
+       obsolescence information.
+
+2002-07-03  Andrew Choi  <akochoi@shaw.ca>
+
+       * macterm.c (x_list_fonts): Fix comment.  Cache fonts matching
+       pattern.  Search cache first.
+       (init_font_name_table): Also add entry for jisx0201.1976-0 coding
+       for Japanese font.
+       (XLoadQueryFont): Use it.
+
+2002-07-02  Richard M. Stallman  <rms@gnu.org>
+
+       * keymap.c (Fdefine_key): Doc fix.
+
+       * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
+
+2002-07-02  Juanma Barranquero  <lektu@terra.es>
+
+       * keymap.c (syms_of_keymap): Fix typo.
+
+2002-07-01  Andrew Choi  <akochoi@shaw.ca>
+
+       * s/darwin.h: Define POSIX_SIGNALS.
+
+       * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
+       and FSRefMakePath to convert FSSpec returned with Apple Event to
+       Posix pathname.
+       (mac_initialize) [TARGET_API_MAC_CARBON]:
+       Call init_required_apple_events and disable the `Quit' menu item
+       provided automatically by the Carbon Toolbox.
+
+2002-07-01  Dave Love  <fx@gnu.org>
+
+       * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
+       for K&R.
+
+       * xterm.c: Fix prototype for K&R.
+
+       * term.c (costs_set): Declare static, non-initialized for pcc.
+
+2002-07-01  Richard M. Stallman  <rms@gnu.org>
+
+       * keyboard.c (timer_last_idleness_start_time): New variable.
+       (timer_start_idle): Set that.
+       (read_key_sequence): Use that to reset timer_idleness_start_time
+       to previous value.
+
+       * window.c (Frecenter): With arg, set optional_new_start.
+
+       * xdisp.c (redisplay_internal): Make optional_new_start really work.
+
+       * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
+       buffer for completion.
+
+2002-06-29  Ken Raeburn  <raeburn@gnu.org>
+
+       * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
+
+2002-06-28  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+
+       * keyboard.c (readable_filtered_events): New function that filters
+       FOCUS_IN_EVENT depending on parameter.
+       (readable_events): Calls readable_filtered_events, not filtering
+       FOCUS_IN_EVENT.
+       (get_filtered_input_pending): New function, filtering parameter passed
+       to readable_filtered_events.
+       (get_input_pending): Calls get_filtered_input_pending, not filtering
+       FOCUS_IN_EVENT.
+       (Finput_pending_p): Calls get_filtered_input_pending, DO filter
+       FOCUS_IN_EVENT.
+
+       * xterm.h (struct x_output): Add focus_state.
+
+       * xterm.c (x_focus_changed): New function.
+       (x_detect_focus_change): New function.
+       (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
+       EnterNotify and LeaveNotify to track X focus changes.
+
+2002-06-28  Andreas Schwab  <schwab@suse.de>
+
+       * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
+
+2002-06-27  Kim F. Storm  <storm@cua.dk>
+
+       * xdisp.c: (mode_line_string_list, mode_line_string_face)
+       (mode_line_string_face_prop): New variables.
+       (store_mode_line_string): New function.
+       (display_mode_element): Use store_mode_line_string to
+       add mode-line string elements to mode_line_string_list
+       when mode_line_string_list is non-nil.
+       (Fformat_mode_line): Now returns propertized string by
+       default.  New arg NO-PROPS to ignore properties.
+       (decode_mode_spec): Only add two dashes for %- in propertized
+       mode-line string.
+       (syms_of_xdisp): Init and staticpro mode_line_string_list.
+
+2002-06-27  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * minibuf.c (minibuffer_completion_contents): Add return type.
+
+2002-06-27  Juanma Barranquero  <lektu@terra.es>
+
+       * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
+
+2002-06-26  Juanma Barranquero  <lektu@terra.es>
+
+       * fileio.c (read_file_name_cleanup): Add missing return.
+
+2002-06-26  Richard M. Stallman  <rms@gnu.org>
+
+       * window.c (Frecenter): Don't set force_start flag.
+
+       * minibuf.c (do_completion, Fminibuffer_complete_word)
+       (Fminibuffer_completion_help): Complete just the text before point.
+       (minibuffer_completion_contents): New function.
+
+       * buffer.c (Fbury_buffer): Use frames_discard_buffer.
+
+       * frame.c (frames_bury_buffer): Function deleted.
+
+2002-06-25  Miles Bader  <miles@gnu.org>
+
+       * callint.c (Fcall_interactively): When checking to see if doprnt hit
+       the end of callint_message, allow for a terminating '\0'.
+
+2002-06-24  Juanma Barranquero  <lektu@terra.es>
+
+       * w32select.c: Include composite.h
+
+       * w16select.c: Likewise.
+
+2002-06-24  Kenichi Handa  <handa@etl.go.jp>
+
+       * callproc.c (Fcall_process): If code detection is necessary,
+       call detect_coding directly here.
+
+       * coding.c (detect_eol): Preserve coding->cmp_data.
+
+       * w16select.c (Fw16_get_clipboard_data):
+       * w32fns.c (w32_to_x_font):
+       * w32select.c (Fw32_get_clipboard_data):
+       * xselect.c (selection_data_to_lisp_data):
+       * xterm.c (XTread_socket): Disable composition handling.
+
+2002-06-24  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * print.c (temp_output_buffer_setup): Kill all local variables.
+
+2002-06-22  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * lread.c (Fread): Remove redundant and imprecise declaration.
+
+       * xfns.c (check_x_display_info): Use check_x_frame.
+
+       * .gdbinit (xprintsym): Use the new `xname' field.
+       (xsymbol): Use it.
+
+2002-06-22  Jason Rumney  <jasonr@gnu.org>
+
+       * w32fns.c (file_dialog_callback): New function.
+       (Fx_file_dialog): Allow selecting directories as well as files.
+
+2002-06-21  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+
+       * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
+       OpenBSD. Add support for mipseb-*-netbsd* machines.
+
+2002-06-17  Andrew Choi  <akochoi@shaw.ca>
+
+       * macterm.c (mac_scroll_area): Set foreground and backcolor to
+       black and white before scrolling.  Restore frame background and
+       foreground color after scrolling.
+       (do_window_update): Call XClearWindow before calling expose_frame.
+       (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
+       FRAME_FOREGROUND_PIXEL of frame.
+
+       * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
+       test Mac command key as <ALT> key.
+
+2002-06-17  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * window.c (Fset_window_configuration): Lisp_Object/int mixup.
+
+       * keyboard.c (read_key_sequence): Be more careful with first_unbound.
+       Lookup keys in function-key-map immediately so that key-translation-map
+       can be applied earlier.
+       Remove function_key_possible and key_translation_possible, replaced
+       by checking `keytran_start < t'.
+
+       * .gdbinit (xsymbol): Use the new `xname' field.
+
+2002-06-17  Andrew Choi  <akochoi@shaw.ca>
+
+       * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
+       test Mac command key as <ALT> key.
+
+       * mac.c (do_applescript): Call initialize_applescript if necessary
+       when first called.  Dispose of result_desc only when there is no error.
+       (Fdo_applescript): Use %d format specifier instead of %ld.
+
+2002-06-16  Andrew Choi  <akochoi@shaw.ca>
+
+       * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
+       of FrontWindow for cases keyDown and autoKey.
+
+       * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
+       Vdefault_fontset to Monaco with mac-roman coding.
+
+       * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
+       init_process before and after inclusion of Carbon/Carbon.h, resp.
+
+       * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
+       cursor_gc.
+       (add_font_name_table_entry): New function.
+       (init_font_name_table): Use add_font_name_table_entry; add italic,
+       bold, and bold-italic entries for truetype fonts.
+
+       * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
+       for Mac too.
+       (try_font_list) [MAC_OS]: If no font matches given registry, try
+       fonts with any registry matching face_family.
+       (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
+
+       * s/darwin.h: If autoconf detects the Ncurses library, define
+       LIBS_TERMCAP to -lncurses to use it.
+
+2002-06-16  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * strftime.c [__hpux]: Include sys/_mbstate_t.h.
+
+2002-06-15  Richard M. Stallman  <rms@gnu.org>
+
+       * window.c (Fset_window_configuration): Explicitly preserve
+       the point value that new_current_buffer had at the start.
+
+2002-06-14  Juanma Barranquero  <lektu@terra.es>
+
+       * composite.c (Fcompose_region_internal, Fcompose_string_internal):
+       Fix typos.
+
+2002-06-14  Kim F. Storm  <storm@cua.dk>
+
+       * insdel.c (insert_1_both, insert_from_string_1)
+       (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
+       insert happened in the end_unchanged region.  Otherwise, the
+       redisplay may be confused and duplicate the last line in the
+       buffer [seen after save-buffer when require-final-newline==t].
+
+2002-06-13  Jason Rumney  <jasonr@gnu.org>
+
+       * w32.c (init_environment): Remove EMACSLOCKDIR.
+       (stat): Swap _S_IFDIR and _S_IFREG.
+
+2002-06-13  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+
+       * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
+       * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
+       * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
+       ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
+       to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
+       NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
+       to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
+       language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
+       to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
+       W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
+       SELECTION_REQUEST_EVENT, selection_clear_event to
+       SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
+       delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
+       ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
+       menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
+       DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
+       no_event to NO_EVENT.
+
+2002-06-12  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+
+       * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
+
+2002-06-12  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * intervals.c (textget): Don't forget to `return'.
+       (lookup_char_property): Use XCAR/XCDR.
+
+2002-06-12  Juanma Barranquero  <lektu@terra.es>
+
+       * xdisp.c (Fformat_mode_line): Fix typo.
+
+2002-06-12  Kim F. Storm  <storm@cua.dk>
+
+       * xdisp.c (Fformat_mode_line): New function.
+       (frame_title_buf, frame_title_buf_end, frame_title_ptr)
+       (store_frame_title_char, store_frame_title): Use unconditionally.
+       (init_xdisp): Defsubr Fformat_mode_line.
+       Initialize frame_title_buf etc. unconditionally.
+
+2002-06-11  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * keyboard.c (read_key_sequence):
+       Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
+       things through those maps after downcasing events.
+       Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
+       applies after function-key-map.
+       Make sure that keytran can be done in the middle in the sequence.
+       Be careful not to throw away events past the one we downcase.
+
+       * lread.c (read_integer): Remove unused var `tem'.
+       (read1): Fix int/Lisp_Object mixup.
+
+       * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
+
+2002-06-11  Richard M. Stallman  <rms@gnu.org>
+
+       * keyboard.c (readable_events): Ignore any number of
+       FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
+
+2002-06-09  Miles Bader  <miles@gnu.org>
+
+       * xfaces.c (Ftty_supports_face_attributes_p): New function.
+       (parse_rgb_list, tty_lookup_color): New functions.
+       (tty_defined_color): Use `tty_lookup_color' to do all the work.
+       (color_distance, Fcolor_distance): New functions.
+       (TTY_SAME_COLOR_THRESHOLD): New macro.
+       (Qtty_color_standard_values): New variable.
+       (syms_of_xfaces): Initialize new vars & functions.
+
+2002-06-08  Colin Walters  <walters@verbum.org>
+
+       * textprop.c (Vchar_property_alias_alist): New variable.
+       (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
+
+       * intervals.c (lookup_char_property): New function for looking up
+       overlay and text properties, created from textget.
+       (textget): Use it.
+
+       * intervals.h (lookup_char_property): Declare.
+       (Vchar_property_alias_alist): Declare.
+
+       * buffer.c (Foverlay_get): Use lookup_char_property.
+
+2002-06-07  Sam Steingold  <sds@gnu.org>
+
+       * xselect.c (lisp_data_to_selection_data): Fix last change:
+       *data_ret is not a Lisp string, while unibyte_string is.
+
+2002-06-07  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * xselect.c (lisp_data_to_selection_data): Fix last change:
+       set size_ret.
+
+2002-06-07  Andreas Schwab  <schwab@suse.de>
+
+       * m/amdx86-64.h: New file.
+
+2002-06-05  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * fns.c (Fstring_make_unibyte): Doc fix.
+
+       * xselect.c (lisp_data_to_selection_data): If the requested type
+        is STRING, call string_make_unibyte to encode the selected text
+        as a string.
+
+       * window.c (Fset_window_hscroll): Doc fix.
+
+2002-06-05  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+
+       * fileio.c (choose_write_coding_system):
+       Call select-safe-coding-system properly.
+
+2002-06-03  Richard M. Stallman  <rms@gnu.org>
+
+       * xdisp.c (message_with_string): Error if STRING is not a string.
+
+       * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
+
+       * fileio.c (choose_write_coding_system): Pass FILE arg to
+       Vselect_safe_coding_system_function.
+
+2002-06-03  Ken Raeburn  <raeburn@gnu.org>
+
+       * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
+
+2002-06-02  Thien-Thi Nguyen  <ttn@gnu.org>
+
+       * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
+       * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
+       * keymap.c (describe_command): Likewise.
+       * minibuf.c (read_minibuf): Likewise.
+
+       * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
+       Cast `current_column' return value to int.
+       (back_to_previous_visible_line_start)
+       (reseat_at_next_visible_line_start, next_element_from_buffer):
+       Cast `indented_beyond_p' 3rd arg to float.
+
+       * indent.c (last_known_column): Now a float.
+       (current_column_1, position_indentation, current_column)
+       (string_display_width): Return float.
+       (Fcurrent_column): Cast `current_column' return value to int.
+       (Fcurrent_indentation): Cast `position_indentation' retval to int.
+       (indented_beyond_p): Third arg now a float.
+       (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
+
+       * lisp.h (current_column): Now returns float.
+       (indented_beyond_p): 3rd arg now a float.
+
+2002-05-31  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
+       is Qcompound_text_with_extensions.
+
+       * xselect.c (lisp_data_to_selection_data): Always set selection
+       type as string if x_encode_text returns streingp non-NULL.
+
+       * s/netbsd.h: Include /usr/pkg in the run time shared library path.
+
+2002-05-30  Richard M. Stallman  <rms@gnu.org>
+
+       * window.c (Fset_window_configuration): Correct the handling
+       of point in current buffer, to work with multiple windows.
+
+2002-05-29  Colin Walters  <walters@verbum.org>
+
+       * lread.c (Fread_from_string): Don't depend on order of evaluation
+       for C function parameters.
+
+2002-05-28  Richard M. Stallman  <rms@gnu.org>
+
+       * xterm.c (x_display_and_set_cursor): Change the cursor in the same
+       way for blinked-off state and for a nonselected window.
+
+       * window.c (window_scroll_pixel_based): Don't call Fbolp;
+       instead, see if the new start pos is at beginning of line.
+
+       * fileio.c (Fwrite_region): If START is a string, don't
+       make any annotations.
+
+       * eval.c (syms_of_eval): Doc fix.
+
+2002-05-28  Colin Walters  <walters@debian.org>
+
+       * emacs.c (USAGE1): Add --no-splash.
+       (standard_args): Ditto.
+
+2002-05-28  Colin Walters  <walters@gnu.org>
+
+       * lread.c (readchar_count): New variable.
+       (readchar): Increment it.
+       (unreadchar): Decrement it.
+       (read_multibyte): Decrement it.
+       (Vread_with_symbol_positions): New variable.
+       (Vread_symbol_positions_list): New variable.
+       (read_internal_start): New function, created from Fread and
+       Fread_from_string.  Handle Vread_symbol_positions_list and
+       Vread_with_symbol_positions.
+       (readevalloop, Fread, Fread_from_string): Use it.
+       (read1): Use readchar_count to add symbol positions to
+       Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
+       (syms_of_lread): DEFVAR_LISP and initialize them.
+
+       * lread.c (read0, read1, read_list, read_vector, read_multibyte)
+       (substitute_object_recurse, substitute_object_in_subtree)
+       (substitute_in_interval): Prototype.
+       (read_multibyte): Return c if it's less than zero.
+
+2002-05-28  Kim F. Storm  <storm@cua.dk>
+
+       * fileio.c (Fread_file_name_internal): Added brute-force
+       speed up for using predicate file-directory-p.
+
+2002-05-28  Kim F. Storm  <storm@cua.dk>
+
+       * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
+       New variables.
+       (syms_of_fileio): DEFVAR_LISP them.
+       (read_file_name_cleanup): New unwind function.
+       (Fread_file_name_internal): Only return completions satifying
+       Vread_file_name_predicate.  Temporarily unwind protect and rebind
+       default-directory while checking completions against the predicate.
+       (Fread_file_name): Added PREDICATE argument.  Specbind it to
+       Vread_file_name_predicate during completion.
+       Call Vread_file_name_function to read the file name if non-nil.
+
+       * lisp.h (Fread_file_name): Now has 6 args.
+
+       * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
+       predicate for Fread_file_name when reading directory name.
+       Supply Qnil for predicate in other calls to Fread_file_name.
+
+2002-05-26  Miles Bader  <miles@gnu.org>
+
+       * term.c (tty_capable_p): New function.
+       * dispextern.h (tty_capable_p): New function declaration.
+       (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
+       (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
+
+2002-05-23  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
+       (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
+       (Vwrite_region_annotate_functions): Docstring fix.
+
+2002-05-23  Kim F. Storm  <storm@cua.dk>
+
+       * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
+       phys_cursor's hpos is overwritten.  This is still not completely
+       correct, as it doesn't really make sense to use hpos at all to
+       get the cursor glyph (as that is relative to the width of the
+       characters on the line, which may have changed during the update).
+
+2002-05-22  Jason Rumney  <jasonr@gnu.org>
+
+       * w32fns.c (enumfont_t): Remove tail, make pattern a normal
+       Lisp_Object.
+       (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
+       Use modified enumfont_t struct.
+
+       * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
+
+       * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
+       Handle the `hbar' cursor type.
+       (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
+
+       * w32fns.c (Qhbar): New variable.
+       (x_specified_cursor_type): Use it.
+
+2002-05-21  Ken Raeburn  <raeburn@gnu.org>
+
+       * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
+       now, when the address is needed.
+
+2002-05-21  Colin Walters  <walters@gnu.org>
+
+       * Makefile.in (shortlisp): Add font-core.el.
+
+2002-05-20  Richard M. Stallman  <rms@gnu.org>
+
+       * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
+
+       * keyboard.c (read_char_minibuf_menu_prompt): Don't list
+       equivalent key bindings here.
+
+2002-05-20  Ken Raeburn  <raeburn@gnu.org>
+
+       Change symbol structure to contain a lisp object for the symbol
+       name:
+       * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
+       object field named "xname".
+       (SYMBOL_NAME): New macro.
+       * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
+       name field.
+       * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
+       (mark_object, gc_sweep): Use symbol xname field and XSTRING
+       instead of name field.
+       * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
+       SYMBOL_NAME instead of XSYMBOL and name field.
+       * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
+       instead of XSYMBOL and name field.
+       * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
+       and SYMBOL_NAME instead of XSYMBOL and name field.
+       * coding.c (Fread_coding_system, code_convert_region1)
+       (code_convert_string1, code_convert_string_norecord)
+       (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
+       XSYMBOL and name field.
+       * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
+       (Fmake_variable_buffer_local, Fmake_local_variable)
+       (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
+       of XSYMBOL and name field.
+       * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
+       XSYMBOL and name field.
+       * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
+       instead of XSYMBOL and name field.
+       * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
+       XSYMBOL and name field.
+       * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
+       Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
+       * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
+       instead of XSYMBOL and name field.
+       * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
+       (parse_modifiers, apply_modifiers, Fevent_convert_list)
+       (parse_solitary_modifier, Fexecute_extended_command):
+       Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
+       * keymap.c (silly_event_symbol_error, Fsingle_key_description)
+       (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
+       of XSYMBOL and name field.
+       (describe_command, describe_translation): Use SYMBOL_NAME and
+       assignment instead of XSYMBOL and name field and XSETSTRING.
+       * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
+       instead of XSYMBOL and name field.
+       (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
+       name field and XSETSTRING.
+       * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
+       of XSYMBOL and name field.
+       * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
+       assignment instead of XSYMBOL and name field and XSETSTRING.
+       * print.c (print_error_message, print_object): Use SYMBOL_NAME and
+       XSTRING instead of XSYMBOL and name field.
+       * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
+       and XSTRING instead of XSYMBOL and name field.
+       * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
+       and XSTRING instead of XSYMBOL and name field.
+       * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
+       XSTRING instead of XSYMBOL and name field.
+       * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
+       of XSYMBOL and name field.
+       * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
+       Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
+
+2002-05-19  Ken Raeburn  <raeburn@gnu.org>
+
+       * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
+       and XCDR real rvalues in most configurations.
+
+       * buffer.c (fix_overlays_in_range, fix_overlays_before):
+       Don't take the address of the cdr part of a cons cell; instead, track
+       the parent cell and call XSETCDR, or set the variable for the head
+       of the list if we haven't started down the list yet.
+
+2002-05-19  Richard M. Stallman  <rms@gnu.org>
+
+       * doc.c (reread_doc_file): Don't ask for confirmation.
+
+2002-05-18  Jason Rumney  <jasonr@gnu.org>
+
+       * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
+       (xbm_load_image): Use it.
+       (xbm_load): Ditto.
+       (xbm_read_bitmap_data): Reverted to xfns.c version.
+       From David Ponce <david@dponce.com>.
+
+2002-05-17  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
+       2.02 and later.
+
+2002-05-16  Juanma Barranquero  <lektu@terra.es>
+
+       * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
+
+2002-05-15  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
+       meaningful test.
+       (read_char_minibuf_menu_prompt): Fix typo.
+
+2002-05-15  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * eval.c (Fcommandp): Doc fix.
+
+2002-05-13  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
+       (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
+       (Fset_keymap_parent): Gcpro a bit more.
+       (access_keymap): Gcpro around meta_map call and around the main loop.
+       (get_keyelt): Gcpro when following indirect references.
+       (copy_keymap_item): New fun, extracted from Fcopy_keymap.
+       (copy_keymap_1, Fcopy_keymap): Use it.  Don't copy the parent map.
+       (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
+       Remove useless ad-hoc remap code.
+
+2002-05-13  Richard M. Stallman  <rms@gnu.org>
+
+       * search.c (search_buffer): Give up boyer moore search if inverse
+       translation change charset_base.
+
+2002-05-12  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
+       characters is carried over from the previous block of text, adjust
+       coding->produced to account for the extra character.
+
+2002-05-11  Andreas Schwab  <schwab@suse.de>
+
+       * coding.c (intersection): Keep the elements of the returned list
+       in the same order as in the first list.
+
+2002-05-11  Kim F. Storm  <storm@cua.dk>
+
+       * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
+       only update cmm_size if realloc actually succeeds.
+       Testing with initial size of 2 elements revealed that using
+       realloc on GNU/Linux would cause a random trap in xmalloc
+       later on, so I rewrote the code to use malloc/bcopy/free instead
+       of realloc.
+
+2002-05-10  Jason Rumney  <jasonr@gnu.org>
+
+       * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
+
+2002-05-10  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
+       parens, to ensure correct evaluation order.
+
+2002-05-10  Kim F. Storm  <storm@cua.dk>
+
+       * keymap.c (Vemulation_mode_map_alists): New variable.
+       (syms_of_keymap): DEFVAR_LISP it.
+       (current_minor_maps): Process keymap alists in that list before
+       minor-mode-overriding-map-alist and minor-mode-map-alist.
+
+2002-05-09  Richard M. Stallman  <rms@gnu.org>
+
+       * search.c (Freplace_match): Doc fix.
+
+2002-05-09  Kim F. Storm  <storm@cua.dk>
+
+       * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
+       Enlarge cursor rectangle drawn around image with non-zero relief.
+
+       * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
+       Enlarge cursor rectangle drawn around image with non-zero relief.
+
+       * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
+       Enlarge cursor rectangle drawn around image with non-zero relief.
+
+2002-05-07  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * xselect.c (lisp_data_to_selection_data): Don't set selection
+       type if comes from the Lisp object's car.  If the selection
+       contains a pure ASCII text, always return QSTRING as its type.
+
+2002-05-06  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+
+       * mac.c (mac-cut-function): Doc fix.
+
+2002-05-05  Richard M. Stallman  <rms@gnu.org>
+
+       * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
+
+2002-05-04  Jason Rumney  <jasonr@gnu.org>
+
+       * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
+       for event-click-count.
+
+       * process.c (init_process): Only add server subfeature if we can
+       use non-blocking I/O.
+
+2002-05-04  Andrew Choi  <akochoi@shaw.ca>
+
+       * macterm.c (XTread_socket): Call WaitNextEvent once instead of
+       repeatedly.
+
+2002-05-03  Jason Rumney  <jasonr@gnu.org>
+
+       * process.c (Fmake_network_process): Only support server sockets
+       when we can make them non-blocking.
+
+       * s/ms-w32.h (HAVE_SELECT): Define.
+
+       * w32.h (FILE_NDELAY): New flag.
+
+       * w32.c (sys_getpeername, fcntl): New functions.
+       (_sys_read_ahead): Temporarily block on non-blocking sockets.
+
+       * w32proc.c: include sys/file.h.
+
+2002-05-03  Colin Walters  <walters@verbum.org>
+
+       * callproc.c (Vgame_score_directory): Renamed to
+       Vshared_game_score_directory.
+
+2002-04-30  Richard M. Stallman  <rms@gnu.org>
+
+       * s/gnu.h [emacs]: Include stdio.h.
+       (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
+
+       * eval.c (do_autoload): Error if called while preparing to dump.
+
+       * fns.c (Frequire): Error if need to load while preparing to dump.
+
+2002-04-28  Colin Walters  <walters@verbum.org>
+
+       * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
+       Default to "~/.emacs.d/games".
+
+2002-04-29  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * lread.c (openp): Change arg exec_only to predicate.
+       (build_load_history): Use XCAR/XCDR.
+       (Flocate_file_internal): New fun.
+       (syms_of_lread): Defsubr it.
+       (Fload): Update call to openp.
+
+       * lisp.h (openp): Update prototype.
+
+       * xfns.c (x_create_bitmap_from_file, x_find_image_file):
+       * w32proc.c (sys_spawnve):
+       * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
+       * w32.c (check_windows_init_file):
+       * sound.c (Fplay_sound_internal):
+       * process.c (Fstart_process):
+       * macfns.c (x_create_bitmap_from_file, x_find_image_file):
+       * mac.c (run_mac_command):
+       * emacs.c (init_cmdargs):
+       * callproc.c (Fcall_process): Update call to openp.
+
+       * textprop.c (remove_properties): Don't use XCAR without CONSP.
+
+       * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
+
+2002-04-29  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+
+       * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
+       (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
+
+2002-04-28  Richard M. Stallman  <rms@gnu.org>
+
+       * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
+
+       * eval.c (Fcommandp): New arg for_call_interactively.
+       * lisp.h (Fcommandp): Declare new arg.
+
+2002-04-28  Jason Rumney  <jasonr@gnu.org>
+
+       * w32proc.c (syms_of_w32proc): Get true file attributes by default.
+
+       * w32.c (stat, fstat): Use file index information to generate
+       inodes for directories where available.
+
+2002-04-26  Andrew Choi  <akochoi@shaw.ca>
+
+       * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
+       [HAVE_CARBON]: Include Mac object files.
+
+       * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
+       fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
+       termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
+       MAC_OSX, and MAC_OS instead of macintosh.
+
+       * editfns.c [MAC_OS8]: Include stdio.h.
+
+       * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
+
+       * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
+       Apple Monaco.
+
+       * process.c: Declare QCfamily and QCfilter as extern.
+       (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
+       calling select.
+
+       * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
+
+       * tparam.c [MAC_OSX]: Don't define BC and UP.
+
+       * config.in [HAVE_CARBON]: Add.
+
+       * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
+       Move here from mac/src and mac/inc.
+
+       * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
+
+2002-04-26  Gerd Moellmann  <gerd@gnu.org>
+
+       * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
+       Compute phys_cursor_width from the x position returned
+       by x_draw_glyhs, which is cheaper.
+       (x_display_and_set_cursor): Compute the buffer-local value
+       of `cursor-in-non-selected-windows' only when needed.
+
+2002-04-25  Gerd Moellmann  <gerd@gnu.org>
+
+       * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
+       cursor on a stretch glyph has a width that depends on
+       x_stretch_cursor_p.
+
+2002-04-25  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+
+       * abbrev.c (abbrev-start-location): Doc fix.
+
+       * indent.c (Fvertical_motion): Fix last change.
+
+2002-04-25  Gerd Moellmann  <gerd@gnu.org>
+
+       * indent.c (Fvertical_motion): Move to the start of the line
+       containing PT before moving up or down.
+
+2002-04-24  Gerd Moellmann  <gerd@gnu.org>
+
+       * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
+       case of writing a whole row, more or less analogous to the case of
+       writing only parts of a row.
+
+       * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
+       0 for NO_CURSOR.
+
+       * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
+
+2002-04-23  Colin Walters  <walters@verbum.org>
+
+       * buffer.c (syms_of_buffer): Doc fix.
+
+2002-04-23  Gerd Moellmann  <gerd@gnu.org>
+
+       * xterm.c (notice_overwritten_cursor): Handle the special case
+       of the cursor being in the first blank non-text line at the
+       end of a window.
+
+       * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
+       (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
+       (x_display_and_set_cursor): Don't set phys_cursor_width here, for
+       bar cursors only, to make phys_cursor_width contain what its name
+       suggests.
+       (notice_overwritten_cursor): Consider the cursor image erased if
+       the output area intersects the cursor image in y-direction.
+
+2002-04-23  Simon Marshall  <simon@gnu.org>
+
+       * xfns.c (x_set_mouse_color): Change default for cross_cursor
+       to XC_hand2.
+
+2002-04-23  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+
+       * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
+
+2002-04-22  Kim F. Storm  <storm@cua.dk>
+
+       * textprop.c (remove_properties): Fixed trap for malformed plist.
+
+2002-04-22  Richard M. Stallman  <rms@gnu.org>
+
+       * cmds.c (Fend_of_line): Handle intangible text in mid line.
+
+       * window.c (make_window): Initialize height_fixed_p,
+       last_cursor_off_p, and p->cursor_off_p slots.
+
+2002-04-20  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+
+       * fns.c (use-dialog-box): Doc fix.
+
+2002-04-19  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+
+       * xterm.c (note_mode_line_or_margin_highlight): Remove unused
+       variables `row', `i' and `area'.
+       (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
+       toolkit library.
+
+2002-04-19  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * xfaces.c (clear_font_table): Don't free the default font of
+       a frame even if it's on another display.
+       (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
+       that could be Qt.
+
+2002-04-19  Juanma Barranquero  <lektu@terra.es>
+
+       * indent.c (Fmove_to_column): Remove unused local variable
+       `next_boundary_byte'.
+       (current_column_1): Likewise.
+
+2002-04-19  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * msdos.c (Qhbar): New variable.
+       (syms_of_msdos): Intern and staticpro it.
+       (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
+       cursor type.
+
+2002-04-19  Dave Lambert  <dlambert@acm.org>
+
+       Theses change implement an underscore-like (`hbar') cursor.
+
+       * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
+
+       * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
+       Handle the `hbar' cursor type.
+       (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
+
+       * xfns.c (Qhbar): New variable.
+       (syms_of_xfns): Intern and staticpro it.
+       (x_specified_cursor_type): Handle `hbar' cursor.
+
+       * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
+       not defined.
+
+2002-04-18  Richard M. Stallman  <rms@gnu.org>
+
+       * textprop.c (remove_properties): New arg LIST allows scanning
+       either a list or a plist.
+       (interval_has_some_properties_list): New function, like
+       interval_has_some_properties using list instead of plist.
+       All callers changed.
+       (Fremove_list_of_text_properties): New function.
+       (syms_of_textprop): Defsubr it.
+
+2002-04-17  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
+
+2002-04-17  Juanma Barranquero  <lektu@terra.es>
+
+       * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
+
+2002-04-17  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * window.c (coordinates_in_window): Don't report on margin area
+       if its width is zero.
+
+2002-04-16  Jason Rumney  <jasonr@gnu.org>
+
+       * w32fns.c (Fx_file_dialog): Decode file name before using.
+
+       * w32term.c (construct_drag_n_drop): Likewise.
+
+2002-04-16  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
+       store load-history in pure space.
+
+       * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
+
+2002-04-16  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * xterm.c (Qlatin_1, Qutf_8): New vars.
+       (syms_of_xterm): Initialize them.
+       (XTread_socket): Eliminate incorrect optimization that tried to avoid
+       decoding the output of X*LookupString.
+       Always use latin-1 to decode the output of XLookupString.
+       Try Xutf8LookupString if XmbLookupString failed.
+
+       * region-cache.c (new_region_cache): Use BEG.
+
+2002-04-16  Gerd Moellmann  <gerd@gnu.org>
+
+       * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
+       configuration files.
+       (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
+       returns 0.
+
+2002-04-15  Andreas Schwab  <schwab@suse.de>
+
+       * config.in: Regenerated using autoheader.
+
+       * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
+       m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
+       m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
+       m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
+       m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
+       m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
+       m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
+       m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
+       m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
+       m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
+       m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
+       m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
+       m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
+       m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
+       m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
+       s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
+       STACK_DIRECTION, now set by autoconf.
+
+2002-04-14  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+
+       * dispnew.c (marginal_area_string): Sort arguments.
+
+       * dispextern.h (marginal_area_string): Add prototype.
+
+2002-04-13  Richard M. Stallman  <rms@gnu.org>
+
+       * fileio.c (Finsert_file_contents):
+       Don't call temp_output_buffer_setup--do just part, by hand.
+
+       * coding.c (run_pre_post_conversion_on_str):
+       Don't call temp_output_buffer_setup--do just part, by hand.
+
+       * keyboard.c (command_loop_1): Don't call start_hourglass
+       or cancel_hourglass when executing a macro.
+
+       * marker.c (count_markers): New function.
+
+       * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
+       grow without limit.  Move recently used elements to the front.
+
+2002-04-13  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
+
+2002-04-12  Gerd Moellmann  <gerd@gnu.org>
+
+       * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
+       rows marginal areas.
+       (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
+       (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
+
+       * dispnew.c (marginal_area_string): Check that glyph row is enabled.
+
+2002-04-12  Dave Love  <fx@gnu.org>
+
+       * dispnew.c (marginal_area_string): New.
+
+       * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
+       (Qleft_margin, Qright_margin): Declare.
+       (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
+
+       * xterm.c (note_mode_line_or_margin_highlight): Renamed from
+       note_mode_line_highlight and extended.
+
+       * keyboard.c (Qleft_margin, Qright_margin): Declare.
+       (make_lispy_event): Deal with mouse events in margins.
+
+2002-04-12  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
+
+       * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
+       than deactivating the mark if tmm is set to `lambda'.
+       (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
+       Use a single event for HELP_EVENT.
+       (Fexecute_extended_command): Save last_point_position.
+
+2002-04-12  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+
+       * lisp.h (Fpropertize): Add prototype.
+
+       * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
+
+2002-04-10  Colin Walters  <walters@verbum.org>
+
+       * config.in: Add HAVE_SHARED_GAME_DIR.
+
+       * callproc.c: (Vgame_score_directory): New variable.
+       (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
+
+2002-04-10  Richard M. Stallman  <rms@gnu.org>
+
+       * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
+
+2002-04-09  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * minibuf.c (read_minibuf): Use empty_string.
+       (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
+       Short-circuit the search as soon as it "failed".
+       (Fall_completions): Allow lambda forms and lists of strings for alist.
+       (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
+       when require_match is nil.
+       (Ftest_completion): Rename from `test_completion' and export to elisp.
+       Call the predicate also when alist is a list.
+       Obey Vcompletion_regexp_list.
+       (do_completion, Fminibuffer_complete_and_exit): Use it.
+       (Fassoc_string): Rename from `assoc_for_completion'.
+       Allow list of strings as well and export to elisp.
+
+2002-04-08  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * puresize.h (BASE_PURESIZE): Increase to 900KB.
+
+2002-04-08  Juanma Barranquero  <lektu@terra.es>
+
+       * w32.c (sys_accept): Don't hide variable `s'.
+
+2002-04-05  Gerd Moellmann  <gerd@gnu.org>
+
+       * callint.c (Fcall_interactively): Use INTEGERP instead of
+       NUMBERP for checking Vhistory_length.
+
+2002-04-05  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+
+       * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
+       Doc fix to reflect it.
+
+2002-04-04  Richard M. Stallman  <rms@gnu.org>
+
+       * xdisp.c (display_mode_element): New arg RISKY.
+       Disregard text props found or specified within a variable
+       that isn't marked risky-local-variable.
+       (Qrisky_local_variable): New variable.
+       (syms_of_xdisp): Init and staticpro it.
+
+2002-04-04  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * undo.c (record_point): New fun.
+       (record_delete, record_insert): Use it.
+
+2002-04-03  Juanma Barranquero  <lektu@terra.es>
+
+       * doc.c (Fdocumentation): Add missing parentheses.
+       (Fdocumentation_property): Likewise.
+
+2002-04-03  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * doc.c (Fdocumentation, Fdocumentation_property): When the doc
+       data is 0, just return nil.
+
+2002-04-03  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * msdos.c (syms_of_msdos): Fix last change with
+       mouse_autoselect_window.
+
+2002-04-03  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+
+       * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
+       mouse_autoselect_window.
+
+2002-04-02  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * keyboard.c (make_lispy_event): Handle unknown keysyms together
+       with system-specific keysyms.  Use it also for unknown function keys.
+
+       * doc.c (reread_doc_file): Return whether reload was attempted.
+       (Fdocumentation, Fdocumentation_property): Don't try to reload
+       if the doc is 0 and only ask once.
+
+       * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
+
+2002-04-02  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * keyboard.c (read_char): If the event was Qselect_window,
+       restore timer_idleness_start_time to its previous value.
+
+       * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
+
+2002-04-01  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * region-cache.c (new_region_cache): Use BEG.
+
+       * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
+       Use BEG and BEG_BYTE.
+
+       * doc.c (get_doc_string): Return nil if the location is wrong.
+       (reread_doc_file): New fun.
+       (Fdocumentation, Fdocumentation_property):
+       Call it if get_doc_string fails.
+       (Fsnarf_documentation): Make it work for a dumped Emacs.
+
+       * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
+       Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
+
+       * charset.c (Fstring): Allow 0 arguments.
+
+       * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
+
+       * process.c (DATAGRAM_CONN_P, list_processes_1)
+       (Fprocess_datagram_address, Fset_process_datagram_address)
+       (Fset_network_process_options, server_accept_connection):
+       Fix some int/Lisp_Object confusions (thank you union types).
+
+2002-04-01  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+
+       * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
+
+       * w32term.c: Likewise.
+       (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
+
+       * keyboard.c (Qselect_window): New symbol.
+       (head_table): Use it.
+       (keys_of_keyboard): Bound select-window event to handle-select-window.
+       (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
+
+       * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
+       (last_window): New variable.
+       (XTread_socket): Generate SELECT_WINDOW_EVENTs.
+       (note_mouse_movement): Remove reimplemented code in #if 0.
+       (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
+       Emacs windows.
+
+       * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
+
+2002-03-31  Gerd Moellmann  <gerd@gnu.org>
+
+       * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
+       Callers changed.
+
+2002-03-30  Richard M. Stallman  <rms@gnu.org>
+
+       * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
+       loop whenever it stops making progress.
+
+       * widget.c (set_frame_size): Don't call change_frame_size.
+
+2002-03-30  Gerd Moellmann  <gerd@gnu.org>
+
+       * dispnew.c (direct_output_for_insert):
+       Call mark_window_display_accurate.
+
+2002-03-29  Jason Rumney  <jasonr@gnu.org>
+
+       * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
+
+2002-03-29  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * Makefile.in (lread.o): Depend on coding.h.
+
+       * lread.c (openp, Fload): Encode the file name before passing it
+       to `stat', `access', and `emacs_open'.
+       (openp): GCPRO the encoded file name.  Don't recompute Lisp
+       strings unnecessarily.
+
+2002-03-29  Kim F. Storm  <storm@cua.dk>
+
+       * fns.c (Flax_plist_put): Doc fix.
+
+2002-03-28  Miles Bader  <miles@gnu.org>
+
+       * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
+
+2002-03-27  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+
+       * process.c (set-network-process-options): Add usage.
+       (make-network-process): Doc fix.
+
+2002-03-26  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
+
+2002-03-26  Richard M. Stallman  <rms@gnu.org>
+
+       * fns.c (Fsubstring_no_properties): New function.
+       (Flax_plist_get, Flax_plist_put): New functions.
+       (syms_of_fns): defsubr them.
+
+       * xdisp.c (update_menu_bar): Test only update_mode_lines;
+       don't test or alter w->update_mode_line.
+
+       * window.c (Fdisplay_buffer): Doc fix.
+
+2002-03-24  Richard M. Stallman  <rms@gnu.org>
+
+       * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
+
+2002-03-24  Gerd Moellmann  <gerd@gnu.org>
+
+       * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
+       (Fdefmacro): Handle `(declare ...)'.
+       (syms_of_eval) <Qdeclare>: Initialize and staticpro.
+       (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
+
+2002-03-24  Jason Rumney  <jasonr@gnu.org>
+
+       * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
+       (xbm_file_p): Add prototypes.
+       (xbm_format, xbm_image_p): Sync with xfns.c.
+       (reflect_byte): New function.
+       (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
+       (xbm_load_image): Create bitmaps with a depth of 1.
+       (init_xfns): Enable XBM images.
+
+2002-03-23  Jason Rumney  <jasonr@gnu.org>
+
+       * w32term.c (w32_handle_tool_bar_click): Detect up and down events
+       correctly.  Do not pass up_modifier to keyboard buffer.
+
+       * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
+
+2002-03-22  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * Makefile.in (bootstrapclean): New target.
+       (bootstrap-temacs, bootstrap-doc): Remove.
+       (bootstrap-emacs): Use a bog-standard `temacs'.
+       Don't bother to build a DOC file.
+
+       * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
+
+       * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
+       in temacs even if !CANNOT_DUMP.
+       (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
+
+       * alloc.c (check_pure_size): Only output a warning.
+
+2002-03-22  Jason Rumney  <jasonr@gnu.org>
+
+       * w32fns.c (Fx_create_frame): Enable tool-bar when images are
+       supported.
+
+       * w32term.c (zv_bits): Declare as short, for word alignment.
+       (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
+       (syms_of_w32term): Define x-use-underline-position-properties.
+
+       * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
+       (clear_image_cache): Block input, fix logic, clear matrices in
+       all frames that share this cache.
+
+2002-03-22  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * emacs.c (main): Update the Copyright year in the blurb printed
+       by "emacs --version".
+
+       * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
+
+       * xterm.c (XTread_socket): If XK_ISO_Lock and
+       XK_ISO_Last_Group_Lock are defined, handle keysyms between
+       XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
+
+2002-03-21  Kim F. Storm  <storm@cua.dk>
+
+       * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
+       menu-bar bindings in keymap and local-map properties _are_ used.
+       But try keymap property first in accordance with 2002-01-03 patch.
+       Added comment describing why this is not always reliable.
+       (tool_bar_items): Ditto for tool-bar.
+
+2002-03-21  Jason Rumney  <jasonr@gnu.org>
+
+       * w32fns.c (x_clear_image_1): Disable color table code.
+
+2002-03-21  Kim F. Storm  <storm@cua.dk>
+
+       * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
+       removed the wrong version of the DEFUN macro; fixed it.
+
+       * fns.c (Ffeaturep): Allow subfeature to be a list (test using
+       Fmember rather than Fmemq).
+       (Fprovide): Check that subfeatures is a list.
+
+       * process.c (QCfeature, QCdatagram): Removed variables.
+       (QCtype, Qdatagram): New variables.
+       (network_process_featurep): Removed function.
+       (Fmake_network_process): Removed :feature check.
+       Use :type 'datagram instead of :datagram t to create a datagram
+       socket.  This allows us to add other connection types (e.g. raw
+       sockets) later in a consistent manner.
+       (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
+       supported subfeatures for feature make-network-process.
+       (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
+       Intern and staticpro QCtype and Qdatagram.
+       (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
+
+       * xfns.c: (QCtype): Remove duplicate declaration and
+       initialization (is now declared in process.c).
+
+       * w32fns.c: (QCtype): Remove duplicate declaration and
+       initialization (is now declared in process.c).
+
+2002-03-21  Richard M. Stallman  <rms@gnu.org>
+
+       * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
+       (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
+       when jumping to `fail' to avoid undoing reg changes in the
+       last iteration of the loop.
+       (GET_UNSIGNED_NUMBER): Skip spaces around the number.
+
+       * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
+       Depend on process.h.
+
+2002-03-20  Jason Rumney  <jasonr@gnu.org>
+
+       Most of the following changes are still conditional on HAVE_IMAGES
+       which is not set by default on Windows.
+
+       * emacs.c (main) [WINDOWSNT]: Call init_xfns.
+
+       * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
+       (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
+       (four_corners_best, x_clear_image_1, x_clear_image)
+       (x_alloc_image_color, postprocess_image)
+       (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
+       (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
+       (init_xfns, syms_of_w32fns): Initialize image functions and constants.
+
+       * w32gui.h (struct XImage): Define.
+
+       * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
+       extract mouse co-ordinates.
+
+2002-03-20  Jason Rumney  <jasonr@gnu.org>
+
+       * w32.c (init_winsock): Dynamically load new server and UDP
+       socket functions.
+       (socket_to_fd): New function.
+       (sys_socket): Use it.
+       (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
+       (sys_recvfrom, sys_sendto): New wrapper functions.
+
+       * process.c (QCfamily, QCfilter): Remove duplicate declaration
+       and initialization.
+
+       * makefile.w32-in (LIBS): Remove $(WSOCK32).
+
+2002-03-20  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
+       Don't use "sun" as a variable, it's a predefined constant on Sun
+       machines.
+
+2002-03-20  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+
+       * bytecode.c (Fbyte_code): Revert last change.
+
+2002-03-19  Kim F. Storm  <storm@cua.dk>
+
+       * makefile.w32-in (LIBS): Add $(WSOCK32).
+       From David Ponce <dponce@voila.fr>.
+
+2002-03-18  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+
+       * process.c (wait_reading_process_input): Move variables `pname'
+       and `pnamelen' down where they are used.
+
+       * bytecode.c (Fbyte_code): Discard unused computed value to
+       prevent gcc warning.
+
+       * lisp.h (Fplist_member): Add prototype.
+
+2002-03-18  Kim F. Storm  <storm@cua.dk>
+
+       * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
+       HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
+
+       * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
+       Remove explicit GNU_LINUX settings for datagram support.
+
+2002-03-18  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+
+       * process.c (Fmake_network_process): Remove unused variable `sa'.
+       Doc fix.  Add usage:.
+       (set_socket_options): Remove unused variables `optnum' and `opttype'.
+
+2002-03-17  Richard M. Stallman  <rms@gnu.org>
+
+       * xdisp.c (cursor_type_changed): New variable.
+       (redisplay_internal): Redisplay all windows if cursor_type_changed.
+       Clear it when clearing windows_or_buffers_changed.
+       (try_cursor_movement, redisplay_window, try_window_id)
+       (try_window_reusing_current_matrix): Test cursor_type_changed
+       along with windows_or_buffers_changed.
+
+       * window.h (cursor_type_changed): New variable.
+
+       * xfns.c (x_set_cursor_type): Set cursor_type_changed,
+       not update_mode_lines, and always set it to 1.
+
+       * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
+       if no frames needed redrawing.
+
+2002-03-17  Kim F. Storm  <storm@cua.dk>
+
+       The following changes add support for network server processes,
+       datagram connections, and local (unix) sockets.
+
+       * process.h (struct Lisp_Process): New member log.
+       Doc fix: Member command used to indicate stopped network process.
+       Doc fix: Member childp contains plist for network process.
+       Doc fix: Member kill_without_query is inverse of query-on-exit flag.
+
+       * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
+       (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
+       (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
+       New variables.
+       (NETCONN1_P): New macro.
+       (DATAGRAM_SOCKETS): New conditional symbol.
+       (datagram_address): New array.
+       (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
+       (status_message): Use concat3.
+       (Fprocess_status): Add `listen' status to doc string.  Return `stop'
+       for a stopped network process.
+       (Fset_process_buffer): Update contact plist for network process.
+       (Fset_process_filter): Ditto.  Don't enable input for stopped
+       network processes.  Server must listen, even if filter is t.
+       (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
+       New functions.
+       (Fprocess_kill_without_query): Removed.  Now defined in simple.el.
+       (Fprocess_contact): Added KEY argument.  Handle datagrams.
+       (list_processes_1): Optionally show only processes with the query
+       on exit flag set.  Dynamically adjust column widths.  Omit tty
+       column if not needed.  Report stopped network processes.
+       Identify server and datagram network processes.
+       (Flist_processes): New optional arg `query-only'.
+       (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
+       (conv_lisp_to_sockaddr, set_socket_options)
+       (network_process_featurep, unwind_request_sigio): New helper functions.
+       (Fprocess_datagram_address, Fset_process_datagram_address):
+       (Fset_network_process_options): New lisp functions.
+       (Fopen_network_stream): Removed.  Now defined in simple.el.
+       (Fmake_network_process): New lisp function.  Code is based on previous
+       Fopen_network_stream, but heavily reworked with new property list based
+       argument list, support for datagrams, server processes, and local
+       sockets in addition to old client-only functionality.
+       (server_accept_connection): New function.
+       (wait_reading_process_input): Use it to handle incoming connects.
+       Do not enable input on a new connection if process is stopped.
+       (read_process_output): Handle datagram sockets. Use 2k buffer for them.
+       (send_process): Handle datagram sockets.
+       (Fstop_process, Fcontinue_process): Apply to network processes.  A stopped
+       network process is indicated by setting command field to t .
+       (Fprocess_send_eof): No-op if datagram connection.
+       (Fstatus_notify): Don't read input for a stream server socket or a
+       stopped network process.
+       (init_process): Initialize datagram_address array.
+       (syms_of_process): Intern and staticpro new variables, defsubr new
+       functions.
+
+2002-03-16  Jason Rumney  <jasonr@gnu.org>
+
+       * w32fns.c (w32_to_all_x_charsets): Return correct type in
+       startup case.
+
+2002-03-16  Richard M. Stallman  <rms@gnu.org>
+
+       * xdisp.c (redisplay_internal, redisplay_windows):
+       Use list_of_error to call internal_condition_case_1.
+       (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
+       so as to catch all errors with no possibility of debugger redisplay.
+       (list_of_error): New variable.
+       (syms_of_xdisp): Init and staticpro it.
+
+       * print.c (print_object): Delete `\ ' from printed rep of frame.
+
+2002-03-15  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
+       until its implementation is fixed.
+
+2002-03-14  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+
+       * xfns.c (png_load): Remove unused variable `gamma_str'.
+
+2002-03-14  Richard M. Stallman  <rms@gnu.org>
+
+       * xfns.c (x_real_positions): Handle failure in XQueryTree.
+
+2002-03-14  Miles Bader  <miles@gnu.org>
+
+       * intervals.c (adjust_for_invis_intang): New function.
+       (set_point_both): Use `adjust_for_invis_intang' to do most of the
+       work for dealing with invisible+intangible regions.  Do so before
+       and after both forward and backward movements, to handle both
+       front-sticky and rear-sticky cases.
+       * textprop.c (text_property_stickiness): Function moved here from
+       `editfns.c'.
+       * intervals.h (text_property_stickiness): New declaration.
+       * editfns.c (char_property_eq): Function removed.
+       (text_property_stickiness): Function moved to `textprop.c'.
+
+2002-03-13  Jason Rumney  <jasonr@gnu.org>
+
+       * config.in: Add STRFTIME_NO_POSIX2.
+
+       * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
+       and %OX when underlying strftime does not.
+
+2002-03-13  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
+       Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
+       line) to avoid annoying flicker.
+       (xm_scroll_callback): Get rid of the now unnecessary kludge.
+       (XTread_socket): Mark it static.
+
+       * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
+
+2002-03-13  Kim F. Storm  <storm@cua.dk>
+
+       * puresize.h (BASE_PURESIZE): Increase to 775000.
+
+2002-03-12  Juanma Barranquero  <lektu@terra.es>
+
+       * editfns.c (syms_of_editfns): Fix typo.
+
+2002-03-12  Gerd Moellmann  <gerd@gnu.org>
+
+       * xsmfns.c: Include stdio.h because termhooks.h needs it.
+       Include termopt.h for interrupt_input.
+
+2002-03-11  Andreas Schwab  <schwab@suse.de>
+
+       * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
+
+2002-03-11  Gerd Moellmann  <gerd@gnu.org>
+
+       * xterm.c (note_mouse_movement): Put code for
+       x_autoselect_window_p in #if 0.
+
+       * lread.c (Fload): Don't assume that message_with_string uses the
+       string it is given like a C string.
+
+2002-03-10  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+
+       * xterm.h (x_session_check_input, x_session_initialize): Declared.
+
+       * xterm.c: (XTread_socket): Add call to x_session_check_input and
+       x_session_have_connection.
+       (x_initialize): Add call to x_session_initialize.
+
+       * termhooks.h (enum event_kind): Add save_session_event.
+
+       * keyboard.c: Add Emacs event save_session_event.
+
+       * emacs.c (main): Add call to syms_of_xsmfns.
+
+       * lisp.h: Declare syms_of_xsmfns as extern.
+
+       * config.in: Add HAVE_X_SM.
+
+       * Makefile.in (LIBXT): Add -lSM -lICE
+       if HAVE_X_SM and not USE_X_TOOLKIT.
+       (XOBJ): New file xsmfns.c added.
+
+       * xsmfns.c: New file for X session management.
+
+2002-03-09  Jason Rumney  <jasonr@gnu.org>
+
+       * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
+       read-only when setting modified time.
+
+2002-03-08  Gerd Moellmann  <gerd@gnu.org>
+
+       * xdisp.c (move_it_vertically_backward): At the end of the function,
+       when moving forward by lines, treat terminal frames specially.
+
+       * keyboard.c (echo_char): Make sure to add a separator between
+       keys even if echo_dash hasn't been called.
+
+       * xdisp.c: Use new string macros.
+       (update_echo_area): Pass number of bytes to message3 instead of
+       number of chars.
+       (set_message_1): Don't access a string's size_byte directly.
+       (decode_mode_spec_coding): Use number of bytes of eoltype string
+       instead number of chars.
+
+       * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
+
+2002-03-08  Juanma Barranquero  <lektu@terra.es>
+
+       * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
+       24-bit.
+
+2002-03-06  Jason Rumney  <jasonr@gnu.org>
+
+       * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
+
+2002-03-06  Gerd Moellmann  <gerd@gnu.org>
+
+       * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
+       (cancel_echoing, echo_length, echo_truncate): Changed to
+       work with new kboard definition.
+       (echo_now): Use message3_nolog instead of message2_nolog.
+
+       * alloc.c (mark_kboards): Mark echo_string.
+
+       * keyboard.h (ECHOBUFSIZE): Removed.
+       (struct kboard): Member echoptr removed, member echobuf renamed
+       to echo_string.
+
+       * xdisp.c (message_with_string): Use Fformat instead of doprnt and
+       message3 instead of message2 to display the message using STRING's
+       text properties.
+
+2002-03-05  Andreas Schwab  <schwab@suse.de>
+
+       * xdisp.c (hscroll_margin): Change to EMACS_INT.
+
+2002-03-05  Per Abrahamsen  <abraham@dina.kvl.dk>
+
+       * frame.c (default-frame-alist): Explain that setting it doesn't
+       affect existing frames.
+
+2002-03-05  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * indent.c (skip_invisible): Fix my brain fart.
+
+       * dispnew.c (sit_for): Don't wait if executing a kbd macro.
+
+2002-03-04  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
+       * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
+       * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
+       * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
+       and variables to use EMACS_INT instead of just int.
+
+       * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
+
+2002-03-04  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
+       environment, pass it down with corrected value.
+
+2002-03-04  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+
+       * lread.c (read_filtered_event): Do not call start_hourglass
+       before returning.
+
+2002-03-04  Juanma Barranquero  <lektu@terra.es>
+
+       * w32term.c (x_display_and_set_cursor): Fix typo.
+
+2002-03-03  Richard M. Stallman  <rms@gnu.org>
+
+       * fileio.c (Fmake_temp_name): Doc fix.
+
+2002-03-03  Gary Wong  <gtw@gnu.org>
+
+       * termcap.c [!emacs]: Replace ospeed for building standalone
+       libtermcap, for binary compatibility.
+
+       * tparam.c [!emacs]: Move #define of bcopy to after string.h.
+
+2002-03-03  Richard M. Stallman  <rms@gnu.org>
+
+       * xrdb.c (file_p): Rename arg `path' to `filename'.
+
+       * abbrev.c (Fexpand_abbrev): Increment plist as use count
+       only if it is an integer.
+
+       * xfns.c (png_load): Set screen_gamma based on f->gamma.
+       If png_get_sRGB gives an answer, call png_set_gamma
+       using the default image gamma value.
+
+       * lread.c (read1): When reading from a file, default string to
+       multibyte only if it has some multibyte characters.
+
+       * print.c (print_object): Output multibyte chars 128...255
+       using \x even if ! print_escape_multibyte.
+
+       * xdisp.c (display_mode_element): Move the places where
+       bytepos, charpos, this, and lisp_string are set.
+       Use lisp_string to set bytepos.
+
+       * xdisp.c (redisplay_internal):
+       Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
+
+       * xdisp.c (display_mode_element): Merge properties specified with
+       :propertize onto those that come with the string.
+
+2002-03-03  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
+       automatic-hscrolling.  Users changed.
+       <hscroll-margin>: Renamed from automatic-hscroll-margin.
+       Users changed.
+       <hscroll-step>: Renamed from automatic-hscroll-step.  Users changed.
+
+2002-03-02  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
+
+2002-03-02  Kim F. Storm  <storm@cua.dk>
+
+       * window.c (Fminibuffer_selected_window): New function.
+       (syms_of_window): Defsubr it.
+
+2002-03-01  Kim F. Storm  <storm@cua.dk>
+
+       * window.h (struct window): New member phys_cursor_width.
+
+       * window.c (make_window, replace_window): Init phys_cursor_width.
+
+       * xterm.c (x_display_and_set_cursor): Blink box cursor using
+       hollow box cursor.  Blink bar cursor using 1 pixel wide bar.
+
+       * w32term.c (x_display_and_set_cursor): Blink box cursor using
+       hollow box cursor.  Blink bar cursor using 1 pixel wide bar.
+
+       * lisp.h (GCPRO6): New macro.
+
+       * process.c (Fopen_network_stream): Use GCPRO6.
+
+2002-03-01  Kim F. Storm  <storm@cua.dk>
+
+       * process.c (Qconnect, Qfailed): New variables.
+       (syms_of_process): Intern and staticpro them.
+       (Fprocess_status): Document connect and failed return values.
+       [NON_BLOCKING_CONNECT]: New conditional.
+       (connect_wait_mask, num_pending_connects): New variables.
+       (status_message): Convert Qfailed status.
+       (Fopen_network_stream): Added support for non-blocking connect.
+       New optional args: filter, sentinel, non_blocking.  Doc updated.
+       [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
+       (deactivate_process): Handle pending non-blocking connect.
+       (wait_reading_process_input): Poll for status of non-blocking
+       connects.  Exec sentinel directly when connect succeeds.
+       (status_notify): Don't read process output if not yet connected.
+
+2002-02-28  Kim F. Storm  <storm@cua.dk>
+
+       * window.c: (minibuf_selected_window): Renamed from
+       Vminibuf_selected_window.  Users changed.
+       (syms_of_window): Staticpro it.
+
+2002-02-26  Kim F. Storm  <storm@cua.dk>
+
+       The following changes add a new Vminibuf_selected_window variable
+       which is similar to Vminibuf_scroll_window, but which is only set
+       on entry to the minibuffer (from a non-minibuffer window):
+
+       * window.c: (Vminibuf_selected_window): New variable.
+       (struct save_window_data): New member minibuf_selected_window.
+       (Fset_window_configuration): Restore Vminibuf_selected_window.
+       (Fcurrent_window_configuration): Save Vminibuf_selected_window.
+       Set minibuf_scroll_window member to nil if minibuf_level is 0.
+       (compare_window_configurations): Compare minibuf_selected_window.
+
+       * window.h: (Vminibuf_selected_window): Declare extern.
+
+       * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
+       entry to minibuffer or on entry from a non-minibuffer window.
+
+       * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
+       Vminibuf_selected_window instead of Vminibuf_scroll_window.
+
+       * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
+       instead of Vminibuf_scroll_window when deciding in which window
+       the region should be highlighted.  Consequently, the region remains
+       highlighteded even when a completion buffer is also displayed.
+
+2002-02-26  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
+
+       * xselect.c (Qcompound_text_with_extensions): Renamed from
+       Qcompound_text_no_extensions.
+       (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
+
+2002-02-26  Juanma Barranquero  <lektu@terra.es>
+
+       * w32proc.c (syms_of_ntproc): Doc fix.
+
+2002-02-24  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+
+       * intervals.h: Include "dispextern.h" unconditionally.
+
+2002-02-24  Jason Rumney  <jasonr@gnu.org>
+
+       * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
+       and disp-table.elc.
+       (lisp): Add emacs-lisp/backquote.elc.
+
+2002-02-24  Kim F. Storm  <storm@cua.dk>
+
+       * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
+       The validation of the event type was too strict as it didn't
+       allow string events; buffer names are used in bindings for
+       menu-bar-select-buffer (see `menu-bar-update-buffers').
+
+2002-02-23  Kim F. Storm  <storm@cua.dk>
+
+       The following changes rework my patch of 2002-02-06 which
+       added command remapping by entering the commands directly into
+       the keymaps.  Now, command remapping uses an explicit `remap'
+       prefix in the keymaps, i.e. [remap COMMAND].
+
+       * keymap.c (Qremap, remap_command_vector): New variables.
+       (is_command_symbol): Removed function.
+       (Fdefine_key): No longer accept a symbol for KEY.
+       Added validation of [remap COMMAND] argument for KEY.
+       The DEF is no longer required to be a symbol when remapping a command.
+       (Fremap_command): New function to remap command through keymaps.
+       (Flookup_key): Perform command remapping initiated by
+       Fremap_command directly for speed.
+       (Fkey_binding): Use Fremap_command for command remapping.
+       (where_is_internal): Handle new command remapping representation.
+       (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
+       staticpro them.  Defsubr Fremap_command.
+
+       * keymap.h (Fremap_command): Declare extern.
+       (is_command_symbol): Remove extern.
+
+       * keyboard.c (command_loop_1): Use Fremap_command for command
+       remapping; now try command remapping for all symbols.
+
+2002-02-23  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * coding.h (run_pre_post_conversion_on_str): Add prototype.
+
+2002-02-23  Jason Rumney  <jasonr@gnu.org>
+
+       * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
+       on the string before encoding it.
+       (Fw32_get_clipboard_data): Run post-read-conversion on the string
+       after decoding it.
+
+       * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
+
+2002-02-23  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+
+       * w32term.c (enter_timestamp): Remove unused static variable to
+       prevent warning.
+
+       * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
+
+2002-02-23  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * w16select.c (Fw16_get_clipboard_data): Fix last change.
+
+       * xselect.c (selection_data_to_lisp_data): Fix last change.
+
+2002-02-22  Jason Rumney  <jasonr@gnu.org>
+
+       * w32term.h (struct w32_output): New member menu_command_in_progress.
+
+       * w32menu.c (menubar_selection_callback): Free the menu and
+       clear the menu_command_in_progress flag.
+
+       * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
+       (menu_free_timer): New variable.
+       (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
+       (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
+       <WM_EXITMENULOOP>: Delay before freeing menu.  Do nothing if a
+       menu command is in progress.
+       <WM_COMMAND>: Set the menu_command_in_progress flag.
+       Kill any menu_free_timer that is running.
+
+       * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
+       Call ExtTextOutA rather than ExtTextOut.
+
+2002-02-22  Eli Zaretskii  <eliz@gnu.org>
+
+       * puresize.h (BASE_PURESIZE): Increase to 755000.
+
+2002-02-22  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
+       on the string before encoding it.
+       (Fw16_get_clipboard_data): Run post-read-conversion on the string
+       after decoding it.
+
+2002-02-22  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       Support for ICCCM  Extended Segments in X selections:
+
+       * xselect.c <Qcompound_text_no_extensions>: New variable.
+       (syms_of_xselect): Intern and staticpro it.
+       (selection_data_to_lisp_data): Run post-read-conversion on decoded
+       selection text.
+       (lisp_data_to_selection_data): If next-selection-coding-system is
+       compound-text-no-extensions, set the type of selection to be
+       compound-text.
+
+       * xterm.h (x_encode_text): Update prototype.
+
+       * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
+       callers changed.  If SELECTIONP is non-zero, run the
+       pre-write-conversion function before encoding the selection text.
+
+2002-02-21  Kim F. Storm  <storm@cua.dk>
+
+       * frame.c (syms_of_frame): Change mouse-highlight default to t.
+
+       * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
+       Correct composing of language-change event.
+
+2002-02-20  Kim F. Storm  <storm@cua.dk>
+
+       * keyboard.c (menu_bar_items): Don't include keymap or local-map
+       bindings at PT when building menu (the menu is not updated often
+       enough for this to work reliable).
+       (tool_bar_items): Likewise.
+       (current_active_maps): Removed unused (and buggy) function.
+
+2002-02-20  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+
+       * xfns.c (gif_load): Use correct width and height for GIF images.
+
+2002-02-19  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * floatfns.c (Fatan): Accept an optional second arg and call
+       atan2 if passed 2 args.
+
+2002-02-18  Jason Rumney  <jasonr@gnu.org>
+
+       * w32term.c (glyph_rect): Determine the row and glyph more precisely.
+
+2002-02-17  Jason Rumney  <jasonr@gnu.org>
+
+       * w32term.c (x_autoselect_window_p): New variable.
+       (syms_of_w32term): DEFVAR_BOOL and initialize it.
+       (note_mouse_movement): Use it.
+
+       * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
+
+       * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
+
+       * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
+       New variables.
+       (syms_of_w32fns): Intern and staticpro them.
+       (x_frame_parms) <"fullscreen">: New parameter.
+       (x_fullscreen_move, x_set_fullscreen): New functions.
+       (x_set_frame_parameters): Support Qfullscreen.
+       (x_real_positions): Save x/y_pixels_diff frame params.
+       (x_figure_window_size): Support full-screen frames.
+       (Fx_create_frame): Default the fullscreen parameter.
+
+       * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
+       (x_fullscreen_adjust): New functions.
+       (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't  resize to
+       fullscreen.  Call x_check_fullscreen_move, and set the
+       want_fullscreen member of output_data.w32
+       <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
+
+       * w32term.h: New enum for FULLSCREEN_* constants.
+       (struct w32_output): New members want_fullscreen, x_pixels_diff,
+       y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
+       (x-fullscreen-adjust): New prototype.
+
+2002-02-17  Kim F. Storm  <storm@cua.dk>
+
+       * frame.c: (Vmouse_highlight): New variable.
+       (syms_of_frame): DEFVAR_LISP it.
+
+       * frame.h: (Vmouse_highlight): Declare extern.
+
+       * xterm.h (struct x_display_info): Add mouse_face_hidden.
+
+       * xterm.c (disable_mouse_highlight): Removed variable.
+       (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
+       (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
+       (XTread_socket): Turn mouse_face_hidden off after mouse movement,
+       and on after keyboard input.
+       (x_term_init): Initialize mouse_face_hidden.
+
+       * msdos.h (struct display_info): Add mouse_face_hidden.
+
+       * msdos.c (disable_mouse_highlight): Removed variable.
+       (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
+       (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
+       (internal_terminal_init): Initialize mouse_face_hidden.
+       (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
+       and on after keyboard input.
+
+       * w32term.h (struct w32_display_info): Add mouse_face_hidden.
+
+       * w32term.c (disable_mouse_highlight): Removed variable.
+       (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
+       (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
+       (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
+       and on after keyboard input.
+       (w32_initialize_display_info): Initialize mouse_face_hidden.
+
+2002-02-16  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * msdos.c (last_mouse_window): New variable.
+       (dos_rawgetc): Fix last change--if the mouse is in the same window
+       as recorded in last_mouse_window, don't select this window.
+
+       * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
+
+       * msdos.c (x_autoselect_window_p): New variable.
+       (syms_of_msdos): Defvar it.
+       (dos_rawgetc): If x_autoselect_window_p is set, select the window in
+       which the last mouse movement occured, unless it is already selected.
+
+       * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
+       New variables.
+       (syms_of_xdisp): DEVFAR them.
+       (hscroll_window_tree): Use automatic_hscroll_margin and
+       Vautomatic_hscroll_step to compute the amount of window scrolling.
+
+2002-02-16  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+
+       * xterm.c (x-autoselect-window): New variable.
+       (note_mouse_movement): Use it.
+
+       * keyboard.c: Do not include "systime.h" twice.
+
+2002-02-15  Andreas Schwab  <schwab@suse.de>
+
+       * puresize.h (BASE_PURESIZE): Increase to 9/5.
+
+       * alloc.c (NSTATICS): Increase to 1280.
+
+2002-02-15  Kai Gro\e,A_\e(Bjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>
+
+       * alloc.c (NSTATICS): Bump to 1026.
+
+       * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
+       (Vx_super_keysym): New variables.
+       (syms_of_xterm): DEFVAR_LISP them.
+       (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
+       variables to determine which keys to use for the various modifiers.
+
+2002-02-13  Kim F. Storm  <storm@cua.dk>
+
+       * window.c: (Vmode_line_in_non_selected_windows): Removed.
+       (mode_line_in_non_selected_windows): New variable.
+       (syms_of_window): DEFVAR_BOOL it.
+
+       * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
+       Use mode_line_in_non_selected_windows.
+       (mode_line_in_non_selected_windows): Declare extern.
+       (Vmode_line_in_non_selected_windows): Removed extern.
+
+2002-02-13  Richard M. Stallman  <rms@gnu.org>
+
+       * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
+       (Fthis_single_command_keys, Fthis_single_command_raw_keys)
+       (Fclear_this_command_keys): Doc fixes.
+
+       * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
+       (update_face_from_frame_parameter): Increment face_change_count
+       and windows_or_buffers_changed to force redisplay using changed faces.
+
+       * xdisp.c (QCpropertize): New variable.
+       (mode_line_proptrans_alist): New variable.
+       (display_mode_element): New arg PROPS; all calls changed.
+       Implement this, for strings.
+       Handle literal output of strings by sharing the
+       main-line code for strings, using local var `literal'.
+       Handle :propertize feature.
+       (syms_of_xdisp): Initialze and staticpro QCpropertize and
+       mode_line_proptrans_alist.
+
+2002-02-11  Kim F. Storm  <storm@cua.dk>
+
+       * window.c: (Vmode_line_in_non_selected_windows): New variable.
+       (syms_of_window): DEFVAR_LISP it.
+
+       * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
+       (CURRENT_MODE_LINE_FACE_ID): Use it.
+       (Vmode_line_in_non_selected_windows): Declare extern.
+
+       * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
+       to get mode line face.
+
+2002-02-11  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
+       variables; cus-start.el doesn't need them anymore.
+
+2002-02-09  Kim F. Storm  <storm@cua.dk>
+
+       * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
+       reduction.  This fixes a display problem where stray newlines were
+       inserted in the window (corrected by C-l).  Clarified code (IMHO).
+
+2002-02-09  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
+
+       * xdisp.c (display_mode_lines): Fix last change.
+
+2002-02-09  Jason Rumney  <jasonr@gnu.org>
+
+       * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
+       match each other.
+       (w32_load_system_font): Prevent Cleartype fonts from loading.
+       (Fx_show_tip): Ensure tip frames are above other topmost windows.
+
+2002-02-09  Kim F. Storm  <storm@cua.dk>
+
+       * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
+       (CURRENT_MODE_LINE_HEIGHT): Use it.
+       (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
+
+       * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
+       (pos_visible_p, handle_face_prop): Likewise.
+       (display_mode_lines): Likewise, but for the real selected window.
+       (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
+
+       * xfaces.c (Qmode_line_inactive): New face variable for mode-line
+       in non-selected windows.
+       (realize_basic_faces): Realize it.
+       (syms_of_term): Intern and staticpro it.
+
+2002-02-08  Kim F. Storm  <storm@cua.dk>
+
+       * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
+       Changed mail addresses to emacs-devel@gnu.org.
+
+2002-02-08  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * fileio.c (Fsubstitute_in_file_name): If the file name includes
+       ~user, and there's no such user, don't discard everything before ~user.
+
+       * floatfns.c (Fround): Doc fix.
+
+2002-02-08  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+
+       * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
+
+2002-02-07  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
+
+2002-02-07  Kim F. Storm  <storm@cua.dk>
+
+       * keymap.c (where_is_internal): Only check whether definition is
+       remapped if it fulfills is_command_symbol.
+
+2002-02-07  Andreas Schwab  <schwab@suse.de>
+
+       * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
+
+       * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
+
+2002-02-06  Kim F. Storm  <storm@cua.dk>
+
+       * keymap.c (Fdefine_key): Allow symbol as KEY argument for
+       defining command remapping.  Doc updated.
+       (Flookup_key): Remap command through keymap if KEY is a symbol.
+       (is_command_symbol): New function.
+       (Fkey_binding): Use it.  New optional argument NO-REMAP.
+       Doc updated.  Callers changed.  Perform command remapping via
+       recursive call unless that arg is non-nil.
+       (where_is_internal): New argument no_remap.  Callers changed.
+       Call recursively to find original key bindings for a remapped
+       comand unless that arg is non-nil.
+       (Fwhere_is_internal): New optional argument NO-REMAP.
+       Doc updated.  Callers changed.  Pass arg to where_is_internal.
 
-       * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
-       copy a lisp value.
+       * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
+       (is_command_symbol): Added prototype.
 
-       * lread.c (Fintern_soft): Use string macros instead of
-       Lisp_String fields.
-       * keyboard.c (echo_char, parse_modifiers_uncached):
-       (parse_solitary_modifier, Fexecute_extended_command): Likewise.
-       * textprop.c (validate_interval_range, interval_of): Likewise.
+       * keyboard.c (Vthis_original_command): New variable.
+       (syms_of_keyboard): DEFVAR_LISP it.
+       (command_loop_1): Set it, and perform command remapping.
 
-       * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
+2002-02-06  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-       * charset.h (FETCH_STRING_CHAR_ADVANCE)
-       (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
-       XSTRING()->size_byte.
+       * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
 
-       * lisp.h (SDATA, SREF): Produce rvalue.
-       (SSET): New macro.
-       * alloc.c (make_event_array): Use SSET for storing into a string.
-       * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
-       a string.
-       * casefiddle.c (casify_object): Use SSET.
-       * charset.h (FETCH_STRING_CHAR_ADVANCE)
-       (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
-       address of string contents.
-       * data.c (Faref): Use SDATA.
-       (Faset): Use SDATA, SSET.
-       * dired.c (directory_files_internal): Use SSET.
-       * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
-       (Fread_file_name): Use SREF, SSET.
-       * fns.c (concat): Use SSET.
-       (concat, Fdelete): Use SDATA.
-       * insdel.c (insert_from_string_1): Use SDATA.
-       * keyboard.c (Fevent_convert_list): Use SREF.
-       * lread.c (Fload): Use SDATA, SSET.
-       * macfns.c (validate_x_resource_name): Use SSET.
-       * process.c (status_message): Use SSET.
-       * search.c (wordify): Use SDATA.
-       (Freplace_match): Use SREF.
-       * w32fns.c (validate_x_resource_name): Use SSET.
-       * xfns.c (validate_x_resource_name): Use SSET.
-       * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
+2002-02-06  Jason Rumney  <jasonr@gnu.org>
 
-2002-07-16  Richard M. Stallman  <rms@gnu.org>
+       * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
 
-       * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
+2002-02-06  Eli Zaretskii  <eliz@is.elta.co.il>
 
-       * xdisp.c (reconsider_clip_changes):
-       Don't test prevent_redisplay_optimizations_p.
-       (redisplay_internal): Test prevent_redisplay_optimizations_p
-       along with clip_changed in some cases.
-       (try_window_id): Likewise.
-       (redisplay_window): New local var buffer_unchanged_p.
+       * charset.c (get_charset_id): Use if-else instead of ?:.
 
-       * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
+2002-02-06  Richard M. Stallman  <rms@gnu.org>
 
-       * process.c (create_process): Test USG_SUBTTY_WORKS.
-       (process_send_signal): Clean up handling of GID.
-       Detect errors in ioctls meant to set GID.
+       * filelock.c (S_ISLNK): Define if not defined.
 
-       * window.c (temp_output_buffer_show):
-       Don't set prevent_redisplay_optimizations_p.
+2002-02-03  Richard M. Stallman  <rms@gnu.org>
 
-2002-07-15  Juanma Barranquero  <lektu@terra.es>
+       * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
 
-       * eval.c (Fdefvaralias): Add docstring argument.
+       * lread.c (read1): Redesign strategy for force_multibyte and
+       force_singlebyte.  Now is_multibyte records whether read_buffer
+       is multibyte.  Encountering any multibyte character makes it so.
 
-2002-07-15  Ken Raeburn  <raeburn@gnu.org>
+2002-02-02  Stefan Monnier  <monnier@cs.yale.edu>
 
-       * lisp.h (STRING_INTERVALS): Produce rvalue.
-       (STRING_SET_INTERVALS): New macro.
-       * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
-       * fns.c (Fstring_as_multibyte): Likewise.
-       * intervals.c (balance_possible_root_interval, delete_interval)
-       (create_root_interval, copy_intervals_to_string): Likewise.
-       * textprop.c (set_text_properties): Likewise.  Use NULL_INTERVAL
-       instead of 0.
+       * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
+       with the same sequence, map that sequence to f10 rather than f0.
 
-2002-07-14  Ken Raeburn  <raeburn@gnu.org>
+2002-02-03  Andreas Schwab  <schwab@suse.de>
 
-       * lisp.h (STRING_SET_CHARS): New macro.
-       (SCHARS, SBYTES): Produce rvalues.
-       * dired.c (directory_files_internal): Use STRING_SET_CHARS.
-       * fns.c (concat): Likewise.
-       * lread.c (read_vector): Likewise.
+       * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
+       latter never being defined on GNU/Linux.
 
-       * lisp.h (SMBP): Deleted.  All uses changed to STRING_MULTIBYTE.
-       (STRING_SET_UNIBYTE): New macro.
-       (SET_STRING_BYTES): Deleted.  Callers (all of which supplied a
-       length of -1) changed to use STRING_SET_UNIBYTE.
-       * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
-       casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
-       composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
-       dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
-       fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
-       keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
-       minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
-       sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
-       w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
-       w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
-       xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
-       STRING_BYTES or indirection changed to SCHARS, SBYTES,
-       STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
-       unchanged for now.
+2002-02-02  Eli Zaretskii  <eliz@is.elta.co.il>
 
-2002-07-13  Kim F. Storm  <storm@cua.dk>
+       * xfaces.c (realize_default_face): Don't set the weight and slant of
+       the default face to Qnormal, unless these attributes are unspecified.
 
-       * keyboard.c (command_loop_1): Invert check on Vmemory_full.
+2002-02-02  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-2002-07-12  Richard M. Stallman  <rms@gnu.org>
+       * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
+       Call cancel_hourglass unconditionally.
 
-       * fileio.c (Fwrite_region): Doc fix.
+       * eval.c (Fsignal): Remove duplicated declaration of
+       the variable `display_hourglass_p'.
 
-       * print.c (print_error_message): Don't handle Vsignaling_function here.
+2002-01-31  Richard M. Stallman  <rms@gnu.org>
 
-       * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
-       (command_loop_1): Avoid certain actions after memory-full error.
+       * editfns.c (region_limit): Nicer error message.
 
-       * eval.c (Fsignal): Don't call cancel_hourglass.
-       For a memory-full error, don't call Vsignal_hook_function
-       and don't set Vsignaling_function.
+       * coding.c (decode_composition_emacs_mule):
+       Give up if NCOMPONENT gets too large to index `component'.
 
-       * process.c (process_send_signal): Add abort call.
+       * callint.c (check_mark): New arg to specify clearer error message.
+       Callers changed.
 
-2002-07-11  Markus Rost  <rost@math.ohio-state.edu>
+2002-01-27  Richard M. Stallman  <rms@gnu.org>
 
-       * keymap.c (Fkey_binding): Fix typo.
+       * minibuf.c (Fcompleting_read): Doc fix.
 
-2002-07-11  Richard M. Stallman  <rms@gnu.org>
+2002-01-27  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-       * alloc.c (Vmemory_full): New variable.
-       (Vmemory_signal_data): Renamed from memory_signal_data.
-       Uses changed.
-       (syms_of_alloc): Defvar them.
-       (memory_full, buffer_memory_full): Set Vmemory_full.
+       * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
+       (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
+       Fix doc-strings.
 
-       * lisp.h (Vmemory_full): Add declaration.
-       (current_column, indented_beyond_p): Change declaration.
+2002-01-26  Richard M. Stallman  <rms@gnu.org>
 
-       * indent.c (last_known_column): Declare as double, not float.
-       (current_column, current_column_1, string_display_width)
-       (position_indentation): Return `double'.
-       (indented_beyond_p): Arg `column' is `double'.  Callers changed.
+       * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
 
-       * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
-       (back_to_previous_visible_line_start)
-       (reseat_at_next_visible_line_start, next_element_from_buffer):
-       Use `double', not `float', when calling indented_beyond_p.
+       * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
+       and scroll_up_aggressively.
 
-       * s/hpux11.h (BROKEN_SA_RESTART): Defined.
+2002-01-26  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-       * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
+       * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
 
-2002-07-11  Juanma Barranquero  <lektu@terra.es>
+2002-01-25  Stefan Monnier  <monnier@cs.yale.edu>
 
-       * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
-       * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
-       * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
-       * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
-       * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
-       * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
+       * textprop.c (Fnext_property_change, Fnext_single_property_change)
+       (Fprevious_property_change, Fprevious_single_property_change):
+       Stay within the narrowed-buffer boundaries.
 
-2002-07-10  Juanma Barranquero  <lektu@terra.es>
+2002-01-25  Eli Zaretskii  <eliz@is.elta.co.il>
 
-       * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE. All callers
-       changed.
+       * term.c (Ftty_display_color_cells): New function.
+       (syms_of_term): Defsubr it.
+       (Ftty_display_color_cells, Ftty_display_color_p): Change the
+       argument name to DISPLAY.  Doc fix.
 
-2002-07-09  Stefan Monnier  <monnier@cs.yale.edu>
+       * dispextern.h: Add prototype for set_tty_color_mode and
+       tty_setup_colors.
 
-       * data.c (Fdefalias): Add an optional `docstring' argument.
-       (set_internal, Fsetq_default): Use XCAR/XCDR.
+2002-01-24  Jason Rumney  <jasonr@gnu.org>
 
-       * composite.c (HASH_VALUE, HASH_KEY):
-       * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
+       * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
+       If region left to draw is not what was expected, mark the frame as
+       garbaged.
 
-2002-07-09  Kenichi Handa  <handa@etl.go.jp>
+       * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
+       Combine the regions returned by BeginPaint and GetUpdateRect.
 
-       * callproc.c (Fcall_process): Fix previous change.
+2002-01-23  Jason Rumney  <jasonr@gnu.org>
 
-2002-07-07  Stefan Monnier  <monnier@cs.yale.edu>
+       * w32term.c (x_update_window_begin): Only hide caret if
+       w32_use_visible_system_caret is set.
+       (x_update_window_end): Only show caret if
+       w32_use_visible_system_caret is set.
+       (syms_of_w32term): Handle SystemParametersInfo call failing.
 
-       * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
-       Add support for hash-tables.
-       (Ftry_completion): Return t even if the string appears multiple times.
+       * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
 
-       * fns.c (Fnconc): Use XCDR.
-       (Fprovide): Use CONSP and XCDR.
-       (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
-       (HASH_TABLE_SIZE): Delete: moved to lisp.h.
-       (Fmake_hash_table): Accept `:size nil'.
-       (Fmakehash): Delete: moved to subr.el.
-       (syms_of_fns): Don't defsubr makehash.
+2002-01-22  Richard M. Stallman  <rms@gnu.org>
 
-       * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
-       (HASH_TABLE_SIZE): Move from fns.c.
+       * unexelf.c (unexec): Define n so as to cause compilation error
+       for the code where people have often written n instead of nn.
 
-2002-07-07  Richard M. Stallman  <rms@gnu.org>
+       * .gdbinit (hookpost-run): Defined.
 
-       * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
-       Instead just return 0 when there is something to be done.
-       (try_scrolling): If make_cursor_line_fully_visible returns 0,
-       retry scrolling as if cursor were off the bottom.
-       (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
-       return CURSOR_MOVEMENT_MUST_SCROLL.
-       (redisplay_window): If make_cursor_line_fully_visible returns 0,
-       go to try_to_scroll.
+2002-01-22  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+
+       * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
+
+2002-01-21  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+
+       * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
+       if fullscreen is being set.
 
-       * buffer.c (Fbuffer_local_value): Store current value into its binding
-       so we get the up-to-date value for the binding that is loaded.
+2002-01-21  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-       * eval.c (Fdefmacro): Doc fix.
+       * minibuf.c (Fminibuffer_contents)
+       (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
+       (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
 
-2002-07-05  Dave Love  <fx@gnu.org>
+2002-01-21  Richard M. Stallman  <rms@gnu.org>
 
-       * keyboard.c (read_key_sequence): Set initial_idleness_start_time
-       correctly.
+       * window.c (check_frame_size): Fix minimum height calculation.
 
-       * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
-       (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
-       (ccl_driver): Add cases for CCL_LookupIntConstTbl,
-       CCL_LookupCharConstTbl.
-       (syms_of_ccl): Defvar translation-hash-table-vector.
+2002-01-20  Ken Raeburn  <raeburn@gnu.org>
 
-2002-07-05  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+       * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
+       height before comparison.
+       (WINDOW_WANTS_HEADER_LINE_P): Likewise.
 
-       * xdisp.c: Remove unused variable `face'.
+2002-01-20  Jason Rumney  <jasonr@gnu.org>
 
-2002-07-04  Juanma Barranquero  <lektu@terra.es>
+       * w32term.c (w32_system_caret_width): Remove.
+       (w32_use_visible_system_caret): New user flag.
+       (syms_of_w32term): DEFVAR_BOOL it.  Initialize based on whether
+       Windows reports a screen reader running.
+       (x_update_window_begin): Hide the system caret.
+       (x_update_window_end): Show the system caret.
+       (x_display_and_set_cursor): Don't draw a cursor when
+       w32_use_visible_system_caret is set.  Do not adjust width.
 
-       * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
-       obsolescence information.
+       * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
+       (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
+       <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
+       the user requests it.  Use system default width when creating.
+       <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
 
-2002-07-03  Andrew Choi  <akochoi@shaw.ca>
+       * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
+       New window messages.
 
-       * macterm.c (x_list_fonts): Fix comment.  Cache fonts matching
-       pattern.  Search cache first.
-       (init_font_name_table): Also add entry for jisx0201.1976-0 coding
-       for Japanese font.
-       (XLoadQueryFont): Use it.
+2002-01-20  Richard M. Stallman  <rms@gnu.org>
 
-2002-07-02  Richard M. Stallman  <rms@gnu.org>
+       * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
 
-       * keymap.c (Fdefine_key): Doc fix.
+2002-01-20  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-       * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
+       * doprnt.c (doprnt1): Fix typos in error call.
 
-2002-07-02  Juanma Barranquero  <lektu@terra.es>
+2002-01-20  Eli Zaretskii  <eliz@is.elta.co.il>
 
-       * keymap.c (syms_of_keymap): Fix typo.
+       * unexelf.c (unexec) [__sgi]: Support the .got sections.
 
-2002-07-01  Andrew Choi  <akochoi@shaw.ca>
+2002-01-20  Jason Rumney  <jasonr@gnu.org>
 
-       * s/darwin.h: Define POSIX_SIGNALS.
+       * w32term.c (w32_native_per_char_metric): Don't trust the metrics
+       that Windows returns.  If a double check fails, try to guess how
+       ExtTextOut is going to act.
 
-       * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
-       and FSRefMakePath to convert FSSpec returned with Apple Event to
-       Posix pathname.
-       (mac_initialize) [TARGET_API_MAC_CARBON]:
-       Call init_required_apple_events and disable the `Quit' menu item
-       provided automatically by the Carbon Toolbox.
+       * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
+       in place of stricmp.
+       (w32_list_synthesized_fonts): Removed.
+       (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
+       (struct enumfont_t): New element; list.
+       (enum_font_cb2): List all style and charset variations of a font.
+       (Fw32_select_font): New optional argument; include_proportional.
+       Exclude vertical fonts.  Exclude proportional fonts unless
+       include_proportional is non-nil.
+       (w32_enable_synthesized_fonts): Change to a boolean.
+       (Fw32_send_sys_command): Doc fix.
 
-2002-07-01  Dave Love  <fx@gnu.org>
+2002-01-19  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-       * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
-       for K&R.
+       * dispnew.c (update_frame): Move the variable `tem' to the block
+       where it is used.
 
-       * xterm.c: Fix prototype for K&R.
+2002-01-19  Jason Rumney  <jasonr@gnu.org>
 
-       * term.c (costs_set): Declare static, non-initialized for pcc.
+       * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
+       call to face-set-after-frame-default.
 
-2002-07-01  Richard M. Stallman  <rms@gnu.org>
+2002-01-18  Richard M. Stallman  <rms@gnu.org>
 
-       * keyboard.c (timer_last_idleness_start_time): New variable.
-       (timer_start_idle): Set that.
-       (read_key_sequence): Use that to reset timer_idleness_start_time
-       to previous value.
+       * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
+       (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
 
-       * window.c (Frecenter): With arg, set optional_new_start.
+2002-01-17  Richard M. Stallman  <rms@gnu.org>
 
-       * xdisp.c (redisplay_internal): Make optional_new_start really work.
+       * window.c (enlarge_window): When exceeding size of parent,
+       directly delete all the siblings instead of trying to resize it.
 
-       * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
-       buffer for completion.
+2002-01-17  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-2002-06-29  Ken Raeburn  <raeburn@gnu.org>
+       * term.c (set_tty_color_mode): Remove unused variable `tem'.
 
-       * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
+2002-01-16  Henrik Enberg  <henrik@enberg.org>
 
-2002-06-28  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+       * lread.c (init_lread): Move the installed-lisp dirs later in the path.
 
-       * keyboard.c (readable_filtered_events): New function that filters
-       FOCUS_IN_EVENT depending on parameter.
-       (readable_events): Calls readable_filtered_events, not filtering
-       FOCUS_IN_EVENT.
-       (get_filtered_input_pending): New function, filtering parameter passed
-       to readable_filtered_events.
-       (get_input_pending): Calls get_filtered_input_pending, not filtering
-       FOCUS_IN_EVENT.
-       (Finput_pending_p): Calls get_filtered_input_pending, DO filter
-       FOCUS_IN_EVENT.
+2002-01-16  Kim F. Storm  <storm@cua.dk>
 
-       * xterm.h (struct x_output): Add focus_state.
+       * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
+       is invisible.  This can happen if cursor is on top line of a
+       window, and we switch to a buffer with a header line.
 
-       * xterm.c (x_focus_changed): New function.
-       (x_detect_focus_change): New function.
-       (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
-       EnterNotify and LeaveNotify to track X focus changes.
+       * w32term.c (x_erase_phys_cursor): Ditto.
 
-2002-06-28  Andreas Schwab  <schwab@suse.de>
+2002-01-16  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-       * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
+       * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
+       `dont_resize' only when used.
 
-2002-06-27  Kim F. Storm  <storm@cua.dk>
+       * xdisp.c: Remove forgotten extern declaration of `Qimage'.
 
-       * xdisp.c: (mode_line_string_list, mode_line_string_face)
-       (mode_line_string_face_prop): New variables.
-       (store_mode_line_string): New function.
-       (display_mode_element): Use store_mode_line_string to
-       add mode-line string elements to mode_line_string_list
-       when mode_line_string_list is non-nil.
-       (Fformat_mode_line): Now returns propertized string by
-       default.  New arg NO-PROPS to ignore properties.
-       (decode_mode_spec): Only add two dashes for %- in propertized
-       mode-line string.
-       (syms_of_xdisp): Init and staticpro mode_line_string_list.
+2002-01-15  Eli Zaretskii  <eliz@is.elta.co.il>
 
-2002-06-27  Stefan Monnier  <monnier@cs.yale.edu>
+       * xdisp.c (display_mode_element): When computing charpos, depend
+       on multibyteness of elt, not the text in field.
 
-       * minibuf.c (minibuffer_completion_contents): Add return type.
+2002-01-15  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-2002-06-27  Juanma Barranquero  <lektu@terra.es>
+       * buffer.c (Fkill_all_local_variables):
+       Increment `update_mode_lines' only once.
 
-       * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
+2002-01-14  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-2002-06-26  Juanma Barranquero  <lektu@terra.es>
+       * lisp.h (adjust_after_replace_noundo)
+       (Fupdate_coding_systems_internal): Add prototypes.
 
-       * fileio.c (read_file_name_cleanup): Add missing return.
+       * sound.c (Fplay_sound): Initialize header_size also for :data case.
 
-2002-06-26  Richard M. Stallman  <rms@gnu.org>
+2002-01-14  Eli Zaretskii  <eliz@is.elta.co.il>
 
-       * window.c (Frecenter): Don't set force_start flag.
+       Support for the --color command-line argument and tty-color-mode
+       frame parameter:
 
-       * minibuf.c (do_completion, Fminibuffer_complete_word)
-       (Fminibuffer_completion_help): Complete just the text before point.
-       (minibuffer_completion_contents): New function.
+       * term.c (tty_default_color_capabilities, tty_setup_colors)
+       (set_tty_color_mode): New functions.
+       (term_init): Call tty_default_color_capabilities.
+       (Qtty_color_mode_alist): New variable.
+       (syms_of_term): Intern and staticpro it.
 
-       * buffer.c (Fbury_buffer): Use frames_discard_buffer.
+       * frame.c (store_frame_param): Call set_tty_color_mode for termcap
+       frames.
+       (do_switch_frame): For termcap frames, switch the tty
+       color mode as specified by the frame's parameters.
+       (Qtty_color_mode): New variable.
+       (syms_of_frame): Intern and staticpro it.
 
-       * frame.c (frames_bury_buffer): Function deleted.
+       * emacs.c (USAGE2): Add the --color option.
+       (standard_args): Ditto.
 
-2002-06-25  Miles Bader  <miles@gnu.org>
+2002-01-13  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
 
-       * callint.c (Fcall_interactively): When checking to see if doprnt hit
-       the end of callint_message, allow for a terminating '\0'.
+       * xterm.h (struct x_output): New members want_fullscreen,
+       x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
+       y_pixels_outer_diff.
+       New enum for FULLSCREEN_* constants.
+       (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
+       is NULL.
+       (x_fullscreen_adjust): Add prototype.
 
-2002-06-24  Juanma Barranquero  <lektu@terra.es>
+       * emacs.c (USAGE2): Add the new full-screen arguments.
+       (standard_args): Ditto.
 
-       * w32select.c: Include composite.h
+       * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
+       New variables.
+       (syms_of_xfns): Intern and staticpro them.
+       (x_frame_parms) <"fullscreen">: New parameter.
+       (x_fullscreen_move, x_set_fullscreen): New functions.
+       (x_set_frame_parameters): Support for Qfullscreen.
+       (x_real_positions): More accurate computation of the frame position.
+       (x_figure_window_size): Support full-screen frames.
+       (Fx_create_frame): Default the fullscreen parameter.
 
-       * w16select.c: Likewise.
+       * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
+       (XTread_socket) <Expose>: Call x_check_fullscreen.
+       <ConfigureNotify>: Don't resize to fullscreen.
+       Call x_check_fullscreen_move, and set the want_fullscreen member of
+       output_data.x.
 
-2002-06-24  Kenichi Handa  <handa@etl.go.jp>
+2002-01-13  Jason Rumney  <jasonr@gnu.org>
 
-       * callproc.c (Fcall_process): If code detection is necessary,
-       call detect_coding directly here.
+       * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
+       for mice with more than 3 buttons.
 
-       * coding.c (detect_eol): Preserve coding->cmp_data.
+       * w32term.c (parse_button): New parameter xbutton.  Callers changed.
+       (w32_read_socket): Handle new "XBUTTON" messages.
 
-       * w16select.c (Fw16_get_clipboard_data):
-       * w32fns.c (w32_to_x_font):
-       * w32select.c (Fw32_get_clipboard_data):
-       * xselect.c (selection_data_to_lisp_data):
-       * xterm.c (XTread_socket): Disable composition handling.
+       * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
+       (syms_of_w32fns): DEFVAR_BOOL it.
+       (w32_wnd_proc): Handle new "XBUTTON" messages.
 
-2002-06-24  Stefan Monnier  <monnier@cs.yale.edu>
+2002-01-13  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-       * print.c (temp_output_buffer_setup): Kill all local variables.
+       * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
 
-2002-06-22  Stefan Monnier  <monnier@cs.yale.edu>
+2002-01-13  Andreas Schwab  <schwab@suse.de>
 
-       * lread.c (Fread): Remove redundant and imprecise declaration.
+       * xterm.c (x_load_font): Never set fonts_changed_p to zero.
 
-       * xfns.c (check_x_display_info): Use check_x_frame.
+2002-01-12  Andreas Schwab  <schwab@suse.de>
 
-       * .gdbinit (xprintsym): Use the new `xname' field.
-       (xsymbol): Use it.
+       * .gdbinit (xbuffer): Remove address operator since data is now a
+       pointer.
 
-2002-06-22  Jason Rumney  <jasonr@gnu.org>
+2002-01-11  Richard M. Stallman  <rms@gnu.org>
 
-       * w32fns.c (file_dialog_callback): New function.
-       (Fx_file_dialog): Allow selecting directories as well as files.
+       * insdel.c (adjust_after_replace_noundo): New function.
 
-2002-06-21  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+       * coding.c (code_convert_region): Don't copy old text if undo disabled.
 
-       * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
-       OpenBSD. Add support for mipseb-*-netbsd* machines.
+2002-01-09  Jason Rumney  <jasonr@gnu.org>
 
-2002-06-17  Andrew Choi  <akochoi@shaw.ca>
+       * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
+       when checking for multiple frames.
 
-       * macterm.c (mac_scroll_area): Set foreground and backcolor to
-       black and white before scrolling.  Restore frame background and
-       foreground color after scrolling.
-       (do_window_update): Call XClearWindow before calling expose_frame.
-       (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
-       FRAME_FOREGROUND_PIXEL of frame.
+2002-01-08  Richard M. Stallman  <rms@gnu.org>
 
-       * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
-       test Mac command key as <ALT> key.
+       * window.c (delete_window): Rewrite the code for changing the
+       selected window to handle the case where WINDOW is not a leaf.
 
-2002-06-17  Stefan Monnier  <monnier@cs.yale.edu>
+2002-01-07  Eli Zaretskii  <eliz@is.elta.co.il>
 
-       * window.c (Fset_window_configuration): Lisp_Object/int mixup.
+       * process.c (send_process): Set src_multibyte to 1 after the call
+       top setup_coding_system, not before the call.
 
-       * keyboard.c (read_key_sequence): Be more careful with first_unbound.
-       Lookup keys in function-key-map immediately so that key-translation-map
-       can be applied earlier.
-       Remove function_key_possible and key_translation_possible, replaced
-       by checking `keytran_start < t'.
+2002-01-07  Jason Rumney  <jasonr@gnu.org>
 
-       * .gdbinit (xsymbol): Use the new `xname' field.
+       * xmenu.c (set_frame_menubar, xmenu_show):
+       (xdialog_show): Initialize wv->help to Qnil.
 
-2002-06-17  Andrew Choi  <akochoi@shaw.ca>
+       * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
+       (w32_dialog_show): Initialize wv->help to Qnil.
 
-       * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
-       test Mac command key as <ALT> key.
+2002-01-06  Jason Rumney  <jasonr@gnu.org>
 
-       * mac.c (do_applescript): Call initialize_applescript if necessary
-       when first called.  Dispose of result_desc only when there is no error.
-       (Fdo_applescript): Use %d format specifier instead of %ld.
+       * xmenu.c (single_submenu): Initialize wv->help to Qnil.
 
-2002-06-16  Andrew Choi  <akochoi@shaw.ca>
+       * w32menu.c (w32_menu_display_help): Revert last change.
 
-       * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
-       of FrontWindow for cases keyDown and autoKey.
+       * xmenu.c (menu_highlight_callback): Revert last change.
 
-       * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
-       Vdefault_fontset to Monaco with mac-roman coding.
+2002-01-06  Andreas Schwab  <schwab@suse.de>
 
-       * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
-       init_process before and after inclusion of Carbon/Carbon.h, resp.
+       * insdel.c (make_gap_larger): Make sure buffer size does not
+       overflow range of int.
 
-       * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
-       cursor_gc.
-       (add_font_name_table_entry): New function.
-       (init_font_name_table): Use add_font_name_table_entry; add italic,
-       bold, and bold-italic entries for truetype fonts.
+2002-01-05  Jason Rumney  <jasonr@gnu.org>
 
-       * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
-       for Mac too.
-       (try_font_list) [MAC_OS]: If no font matches given registry, try
-       fonts with any registry matching face_family.
-       (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
+       * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
+       OVERLAPS_P.
 
-       * s/darwin.h: If autoconf detects the Ncurses library, define
-       LIBS_TERMCAP to -lncurses to use it.
+       * w32menu.c (w32_menu_display_help): Hide any tooltip window.
 
-2002-06-16  Eli Zaretskii  <eliz@is.elta.co.il>
+       * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
+       to the left or to the right of the pointer, put it against
+       the left screen edge.
+       (x_frame_parms): Add missing braces around initializer.
 
-       * strftime.c [__hpux]: Include sys/_mbstate_t.h.
+       * w32term.c (x_setup_relief_colors): Don't compute an image's
+       background color if it doesn't have a Pixmap.
+       (notice_overwritten_cursor): Don't depend on
+       output_cursor and updated_area.  Compare pixel coordinates with
+       window's cursor pixel coordinates.
+       (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
+       Call notice_overwritten_cursor with new arg list.
+       (show_mouse_face): Fix bug setting a row's mouse_face_p flag
+       unconditionally.
+       (x_draw_image_relief): Use predefined macro instead of
+       constant when the value of `tool_bar_button_relief' is negative.
 
-2002-06-15  Richard M. Stallman  <rms@gnu.org>
+       * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
 
-       * window.c (Fset_window_configuration): Explicitly preserve
-       the point value that new_current_buffer had at the start.
+2002-01-04  Richard M. Stallman  <rms@gnu.org>
 
-2002-06-14  Juanma Barranquero  <lektu@terra.es>
+       * xmenu.c (menu_highlight_callback): Hide any tooltip window.
 
-       * composite.c (Fcompose_region_internal, Fcompose_string_internal):
-       Fix typos.
+2002-01-03  Richard M. Stallman  <rms@gnu.org>
 
-2002-06-14  Kim F. Storm  <storm@cua.dk>
+       * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
+       (Fkey_binding): Try the `keymap' property map first.
+       (Fdescribe_buffer_bindings): Show `keymap' property bindings before
+       minor mode bindings.
 
-       * insdel.c (insert_1_both, insert_from_string_1)
-       (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
-       insert happened in the end_unchanged region.  Otherwise, the
-       redisplay may be confused and duplicate the last line in the
-       buffer [seen after save-buffer when require-final-newline==t].
+2002-01-03  Kim F. Storm  <storm@cua.dk>
 
-2002-06-13  Jason Rumney  <jasonr@gnu.org>
+       * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
 
-       * w32.c (init_environment): Remove EMACSLOCKDIR.
-       (stat): Swap _S_IFDIR and _S_IFREG.
+2002-01-02  Richard M. Stallman  <rms@gnu.org>
 
-2002-06-13  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+       * keyboard.c (read_key_sequence): Handle the keymap property
+       before minor mode maps.
 
-       * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
-       * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
-       * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
-       ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
-       to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
-       NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
-       to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
-       language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
-       to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
-       W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
-       SELECTION_REQUEST_EVENT, selection_clear_event to
-       SELECTION_CLEAR_EVENT, buffer_sw
+       * editfns.c (Fformat): Update thissize from field_width
+       based on the actual width, in the string case.
 
-2002-04-01  Stefan Monnier  <monnier@cs.yale.edu>
+2002-01-01  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-       * region-cache.c (new_region_cache): Use BEG.
+       * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
+       when used as truth value to prevent gcc warnings.
 
-       * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
-       Use BEG and BEG_BYTE.
+       * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
+       * w32proc.c: Include <config.h>.
 
-       * doc.c (get_doc_string): Return nil if the location is wrong.
-       (reread_doc_file): New fun.
-       (Fdocumentation, Fdocumentation_property):
-       Call it if get_doc_string fails.
-       (Fsnarf_documentation): Make it work for a dumped Emacs.
+2002-01-01  Andreas Schwab  <schwab@suse.de>
 
-       * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
-       Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
+       * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
+       not EMACS_INT, to make them compatible with DEFVAR_INT.
+       * lisp.h (max_specpdl_size): Adjust declaration.
 
-       * charset.c (Fstring): Allow 0 arguments.
+2002-01-01  Richard M. Stallman  <rms@gnu.org>
 
-       * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
+       * print.c (print_object): Test print_escape_nonascii only for
+       unibyte strings.
+       (PRINTPREPARE): Once again bind Qprint_escape_nonascii
+       when outputting to a multibyte buffer.
 
-       * process.c (DATAGRAM_CONN_P, list_processes_1)
-       (Fprocess_datagram_address, Fset_process_datagram_address)
-       (Fset_network_process_options, server_accept_connection):
-       Fix some int/Lisp_Object confusions (thank you union types).
+2001-12-29  Richard M. Stallman  <rms@gnu.org>
 
-2002-04-01  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+       * print.c (print_object): In multibyte string, use hex escapes.
+       Use octal only for unibyte strings.
+       (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
 
-       * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
+       * lread.c (read_escape): New arg BYTEREP for reporting whether
+       escape forces unibyte or multibyte.
+       (read1): When reading a string, take note of that info.
 
-       * w32term.c: Likewise.
-       (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
+2001-12-29  Ken Raeburn  <raeburn@gnu.org>
 
-       * keyboard.c (Qselect_window): New symbol.
-       (head_table): Use it.
-       (keys_of_keyboard): Bound select-window event to handle-select-window.
-       (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
+       * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
+       comparison to test lisp value returned by Fget.
 
-       * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
-       (last_window): New variable.
-       (XTread_socket): Generate SELECT_WINDOW_EVENTs.
-       (note_mouse_movement): Remove reimplemented code in #if 0.
-       (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
-       Emacs windows.
+2001-12-29  Richard M. Stallman  <rms@gnu.org>
 
-       * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
+       * lisp.h (max_specpdl_size): Add declaration.
 
-2002-03-31  Gerd Moellmann  <gerd@gnu.org>
+       * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
 
-       * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
-       Callers changed.
+       * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
+       Handle modifier bits.  Correct typo in error message.
 
-2002-03-30  Richard M. Stallman  <rms@gnu.org>
+2001-12-28  Richard M. Stallman  <rms@gnu.org>
 
-       * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
-       loop whenever it stops making progress.
+       * abbrev.c: Use the plist of an abbrev for multiple params if nec.
+       (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
+       (Fdefine_global_abbrev, Fdefine_mode_abbrev):
+       Update calls to Fdefine_abbrev.
+       (write_abbrev): Update for changed data format.
+       Don't list "system" abbrevs.
+       (Fexpand_abbrev): Update use count with new data format.
+       (describe_abbrev): Update for changed data format.
+       (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
 
-       * widget.c (set_frame_size): Don't call change_frame_size.
+       * config.in (HAVE_MBSINIT): Add #undef.
 
-2002-03-30  Gerd Moellmann  <gerd@gnu.org>
+       * strftime.c (mbsinit): Define as no-op if not available.
 
-       * dispnew.c (direct_output_for_insert):
-       Call mark_window_display_accurate.
+       * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
+       (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
 
-2002-03-29  Jason Rumney  <jasonr@gnu.org>
+       * keymap.c (Flookup_key): Error message if key has wrong data type.
+       (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
+       (exclude_key): New variable.
 
-       * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
+2001-12-28  Gerd Moellmann  <gerd@gnu.org>
 
-2002-03-29  Eli Zaretskii  <eliz@is.elta.co.il>
+       * xterm.c (x_setup_relief_colors): Don't compute an image's
+       background color if it doesn't have a Pixmap.
 
-       * Makefile.in (lread.o): Depend on coding.h.
+       * xterm.c (notice_overwritten_cursor): Don't depend on
+       output_cursor and updated_area.  Compare pixel coordinates with
+       window's cursor pixel coordinates.
+       (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
+       Call notice_overwritten_cursor with new arg list.
+       (show_mouse_face): Fix bug setting a row's mouse_face_p flag
+       unconditionally.
 
-       * lread.c (openp, Fload): Encode the file name before passing it
-       to `stat', `access', and `emacs_open'.
-       (openp): GCPRO the encoded file name.  Don't recompute Lisp
-       strings unnecessarily.
+       * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
+       height of the cursor line to the amount to scroll.
 
-2002-03-29  Kim F. Storm  <storm@cua.dk>
+2001-12-27  Richard M. Stallman  <rms@gnu.org>
 
-       * fns.c (Flax_plist_put): Doc fix.
+       * intervals.c (set_point_both): The position after an invisible,
+       intangible character is not an acceptable stopping point.
 
-2002-03-28  Miles Bader  <miles@gnu.org>
+2001-12-27  Ken Raeburn  <raeburn@gnu.org>
 
-       * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
+       * window.c (enlarge_window): In new preserve_before code, convert
+       CURBEG from lisp object to integer before doing arithmetic.
 
-2002-03-27  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+2001-12-27  Richard M. Stallman  <rms@gnu.org>
 
-       * process.c (set-network-process-options): Add usage.
-       (make-network-process): Doc fix.
+       * bytecode.c (Fbyte_code): Undo previous change.
 
-2002-03-26  Eli Zaretskii  <eliz@is.elta.co.il>
+2001-12-26  Kim F. Storm  <storm@cua.dk>
 
-       * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
+       * keyboard.c (record_char): Ignore duplicate help-echo events only
+       separated by mouse-movement.  When tracking mouse, only record
+       first and last mouse-movement event in same window.
+       Don't record mouse-movement events in keyboard macros.
 
-2002-03-26  Richard M. Stallman  <rms@gnu.org>
+2001-12-25  Richard M. Stallman  <rms@gnu.org>
 
-       * fns.c (Fsubstring_no_properties): New function.
-       (Flax_plist_get, Flax_plist_put): New functions.
-       (syms_of_fns): defsubr them.
+       * window.c (enlarge_window): New arg PRESERVE_BEFORE.  Callers changed.
+       (Fenlarge_window): New arg PRESERVE_BEFORE.
 
-       * xdisp.c (update_menu_bar): Test only update_mode_lines;
-       don't test or alter w->update_mode_line.
+       * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
+       instead of Fstring_as_unibyte.
 
-       * window.c (Fdisplay_buffer): Doc fix.
+2001-12-22  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-2002-03-24  Richard M. Stallman  <rms@gnu.org>
+       The following changes remove mocklisp support:
 
-       * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
+       * mocklisp.h, mocklisp.c: Files removed.
 
-2002-03-24  Gerd Moellmann  <gerd@gnu.org>
+       * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
+       `Qmocklisp' and `Qmocklisp_arguments'.
+       Remove prototype of syms_of_mocklisp.
 
-       * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
-       (Fdefmacro): Handle `(declare ...)'.
-       (syms_of_eval) <Qdeclare>: Initialize and staticpro.
-       (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
+       * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
 
-2002-03-24  Jason Rumney  <jasonr@gnu.org>
+       * callint.c: Do not include mocklisp.h.
+       (Fcall_interactively): Do not test for mocklisp case.
 
-       * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
-       (xbm_file_p): Add prototypes.
-       (xbm_format, xbm_image_p): Sync with xfns.c.
-       (reflect_byte): New function.
-       (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
-       (xbm_load_image): Create bitmaps with a depth of 1.
-       (init_xfns): Enable XBM images.
+       * eval.c: Remove variables `Qmocklisp_arguments',
+       `Vmocklisp_arguments' and `Qmocklisp'.  Remove prototype of ml_apply.
+       (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
+       Do not test for mocklisp case.
+       (Fwhile): Remove unused variable `tem'.
+       (syms_of_eval): Remove variable `moclisp-arguments'.
 
-2002-03-23  Jason Rumney  <jasonr@gnu.org>
+       * data.c (wrong_type_argument): Remove mocklisp case.
 
-       * w32term.c (w32_handle_tool_bar_click): Detect up and down events
-       correctly.  Do not pass up_modifier to keyboard buffer.
+       * doc.c (Fdocumentation): Remove mocklisp case.
 
-       * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
+       * emacs.c (main): Do not call syms_of_mocklisp.
 
-2002-03-22  Stefan Monnier  <monnier@cs.yale.edu>
+2001-12-21  Richard M. Stallman  <rms@gnu.org>
 
-       * Makefile.in (bootstrapclean): New target.
-       (bootstrap-temacs, bootstrap-doc): Remove.
-       (bootstrap-emacs): Use a bog-standard `temacs'.
-       Don't bother to build a DOC file.
+       * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
+       to the left or to the right of the pointer, put it against
+       the left screen edge.
 
-       * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
+2001-12-21  Eli Zaretskii  <eliz@is.elta.co.il>
 
-       * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
-       in temacs even if !CANNOT_DUMP.
-       (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
+       * Makefile.in (distclean): Remove .gdbinit if we are building
+       outside the source tree.
 
-       * alloc.c (check_pure_size): Only output a warning.
+2001-12-19  Eli Zaretskii  <eliz@is.elta.co.il>
 
-2002-03-22  Jason Rumney  <jasonr@gnu.org>
+       * w32.c (emacs_root_dir): New function.
 
-       * w32fns.c (Fx_create_frame): Enable tool-bar when images are
-       supported.
+       * msdos.c (emacs_root_dir): New function.
 
-       * w32term.c (zv_bits): Declare as short, for word alignment.
-       (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
-       (syms_of_w32term): Define x-use-underline-position-properties.
+       * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
+       of the current drive as the fallback for default_directory.
 
-       * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
-       (clear_image_cache): Block input, fix logic, clear matrices in
-       all frames that share this cache.
+       * dired.c (file_name_completion): Run the elements of
+       completion-ignored-extensions through ENCODE_FILE.
 
-2002-03-22  Eli Zaretskii  <eliz@is.elta.co.il>
+       * lisp.h (scmp): Remove prototype, since it's now a static
+       function private to dired.c.
 
-       * emacs.c (main): Update the Copyright year in the blurb printed
-       by "emacs --version".
+2001-12-18  Richard M. Stallman  <rms@gnu.org>
 
-       * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
+       * dired.c (scmp): Function moved from minibuf.c.
+       Delete multibyte handling--used only on encoded strings.
 
-       * xterm.c (XTread_socket): If XK_ISO_Lock and
-       XK_ISO_Last_Group_Lock are defined, handle keysyms between
-       XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
+       * minibuf.c (scmp): Function moved to dired.c.
 
-2002-03-21  Kim F. Storm  <storm@cua.dk>
+       * fns.c (merge): Add QUIT call.
 
-       * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
-       menu-bar bindings in keymap and local-map properties _are_ used.
-       But try keymap property first in accordance with 2002-01-03 patch.
-       Added comment describing why this is not always reliable.
-       (tool_bar_items): Ditto for tool-bar.
+2001-12-18  Dave Love  <fx@gnu.org>
 
-2002-03-21  Jason Rumney  <jasonr@gnu.org>
+       * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
+       language/georgian.el.
 
-       * w32fns.c (x_clear_image_1): Disable color table code.
+2001-12-18  Eli Zaretskii  <eliz@is.elta.co.il>
 
-2002-03-21  Kim F. Storm  <storm@cua.dk>
+       * Makefile.in (lisp, shortlisp): Synchronize with changes to
+       lisp/Makefile.in:DONTCOMPILE.
 
-       * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
-       removed the wrong version of the DEFUN macro; fixed it.
+2001-12-18  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-       * fns.c (Ffeaturep): Allow subfeature to be a list (test using
-       Fmember rather than Fmemq).
-       (Fprovide): Check that subfeatures is a list.
+       * xdisp.c (window_box_height): Do not return negative values.
+       From Gerd Moellmann <gerd@gnu.org>.
 
-       * process.c (QCfeature, QCdatagram): Removed variables.
-       (QCtype, Qdatagram): New variables.
-       (network_process_featurep): Removed function.
-       (Fmake_network_process): Removed :feature check.
-       Use :type 'datagram instead of :datagram t to create a datagram
-       socket.  This allows us to add other connection types (e.g. raw
-       sockets) later in a consistent manner.
-       (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
-       supported subfeatures for feature make-network-process.
-       (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
-       Intern and staticpro QCtype and Qdatagram.
-       (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
+       * keyboard.c (head_table): Add missing braces around initializer.
 
-       * xfns.c: (QCtype): Remove duplicate declaration and
-       initialization (is now declared in process.c).
+       * term.c (keys): Likewise.
 
-       * w32fns.c: (QCtype): Remove duplicate declaration and
-       initialization (is now declared in process.c).
+       * xfns.c (x_frame_parms, visual_classes): Likewise.
 
-2002-03-21  Richard M. Stallman  <rms@gnu.org>
+2001-12-17  Sam Steingold  <sds@gnu.org>
 
-       * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
-       (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
-       when jumping to `fail' to avoid undoing reg changes in the
-       last iteration of the loop.
-       (GET_UNSIGNED_NUMBER): Skip spaces around the number.
+       * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
+       patch (COMPOSING_P, not COMPOSING).
 
-       * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
-       Depend on process.h.
+2001-12-17  Richard M. Stallman  <rms@gnu.org>
 
-2002-03-20  Jason Rumney  <jasonr@gnu.org>
+       * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
 
-       Most of the following changes are still conditional on HAVE_IMAGES
-       which is not set by default on Windows.
+       * coding.c (code_convert_region): Update coding->cmp_data->char_offset
+       before calling decode_coding.
 
-       * emacs.c (main) [WINDOWSNT]: Call init_xfns.
+       * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
 
-       * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
-       (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
-       (four_corners_best, x_clear_image_1, x_clear_image)
-       (x_alloc_image_color, postprocess_image)
-       (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
-       (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
-       (init_xfns, syms_of_w32fns): Initialize image functions and constants.
+       * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
+       instead of only for COMPOSITION_DISABLED.
 
-       * w32gui.h (struct XImage): Define.
+2001-12-16  Richard M. Stallman  <rms@gnu.org>
 
-       * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
-       extract mouse co-ordinates.
+       * alloc.c (pure_alloc): After overflow, allocate just a small block.
 
-2002-03-20  Jason Rumney  <jasonr@gnu.org>
+       * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
 
-       * w32.c (init_winsock): Dynamically load new server and UDP
-       socket functions.
-       (socket_to_fd): New function.
-       (sys_socket): Use it.
-       (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
-       (sys_recvfrom, sys_sendto): New wrapper functions.
+       * buffer.h (struct buffer): New field `display_error_modiff'.
+       * buffer.c (reset_buffer): Initialize `display_error_modiff'.
 
-       * process.c (QCfamily, QCfilter): Remove duplicate declaration
-       and initialization.
+       * window.c (Frecenter): Clear display_error_modiff field.
 
-       * makefile.w32-in (LIBS): Remove $(WSOCK32).
+       * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
+       Call redisplay_window, but not if display_error_modiff field says no.
+       (redisplay_window_error): New function.
+       (displayed_buffer): New variable.
+       (redisplay_internal, redisplay_windows): Call the new functions
+       instead of redisplay_window directly.
 
-2002-03-20  Eli Zaretskii  <eliz@is.elta.co.il>
+2001-12-15  Richard M. Stallman  <rms@gnu.org>
 
-       * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
-       Don't use "sun" as a variable, it's a predefined constant on Sun
-       machines.
+       * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
 
-2002-03-20  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+2001-12-14  Andrew Innes  <andrewi@gnu.org>
 
-       * bytecode.c (Fbyte_code): Revert last change.
+       * makefile.w32-in (EMACSLOADPATH): Define.
+       ($(EMACS)): Run `list-load-path-shadows' after dumping emacs.
+       (bootstrap-temacs): Remove dependency on bootstrap-clean.
 
-2002-03-19  Kim F. Storm  <storm@cua.dk>
+2001-12-13  Eli Zaretskii  <eliz@is.elta.co.il>
 
-       * makefile.w32-in (LIBS): Add $(WSOCK32).
-       From David Ponce <dponce@voila.fr>.
+       * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
+       parameter have a numeric value all the time.
 
-2002-03-18  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+       * w32fns.c (x_report_frame_params): Likewise.
 
-       * process.c (wait_reading_process_input): Move variables `pname'
-       and `pnamelen' down where they are used.
+2001-12-12  Richard M. Stallman  <rms@gnu.org>
 
-       * bytecode.c (Fbyte_code): Discard unused computed value to
-       prevent gcc warning.
+       * fileio.c (Fwrite_region): Doc fix.
 
-       * lisp.h (Fplist_member): Add prototype.
+       * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
+       (redisplay_internal): Call clear_image_cache only for window terminals.
+
+2001-12-12  Gerd Moellmann  <gerd@gnu.org>
+
+       * xdisp.c (move_it_vertically_backward): Change heuristic
+       for the case that we didn't move far enough initially.
+
+       * window.c (Frecenter): Simplify computation in the case of window
+       system frames and ARG < 0; use window_box_height.
 
-2002-03-18  Kim F. Storm  <storm@cua.dk>
+2001-12-11  Richard M. Stallman  <rms@gnu.org>
 
-       * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
-       HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
+       * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
+       * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
 
-       * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
-       Remove explicit GNU_LINUX settings for datagram support.
+2001-12-11  Andrew Innes  <andrewi@gnu.org>
 
-2002-03-18  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+       * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
+       arg is negative.
 
-       * process.c (Fmake_network_process): Remove unused variable `sa'.
-       Doc fix.  Add usage:.
-       (set_socket_options): Remove unused variables `optnum' and `opttype'.
+2001-12-11  Richard M. Stallman  <rms@gnu.org>
 
-2002-03-17  Richard M. Stallman  <rms@gnu.org>
+       * m/hp800.h: Split the __hpux conditional into the parts
+       that are right for GNU/Linux too and the parts that are not.
+       Use the former if GNU_LINUX.
+       (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
 
-       * xdisp.c (cursor_type_changed): New variable.
-       (redisplay_internal): Redisplay all windows if cursor_type_changed.
-       Clear it when clearing windows_or_buffers_changed.
-       (try_cursor_movement, redisplay_window, try_window_id)
-       (try_window_reusing_current_matrix): Test cursor_type_changed
-       along with windows_or_buffers_changed.
+       * s/gnu-linux.h (GNU_LINUX): Defined.
 
-       * window.h (cursor_type_changed): New variable.
+2001-12-11  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-       * xfns.c (x_set_cursor_type): Set cursor_type_changed,
-       not update_mode_lines, and always set it to 1.
+       * macros.c, msdos.c, w16select.c: Change doc-string comments to
+       `new style' [w/`doc:' keyword].
 
-       * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
-       if no frames needed redrawing.
+2001-12-10  Jason Rumney  <jasonr@gnu.org>
 
-2002-03-17  Kim F. Storm  <storm@cua.dk>
+       * w32menu.c (w32_free_submenu_strings): Clear menu item struct
+       before using.
 
-       The following changes add support for network server processes,
-       datagram connections, and local (unix) sockets.
+2001-12-09  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-       * process.h (struct Lisp_Process): New member log.
-       Doc fix: Member command used to indicate stopped network process.
-       Doc fix: Member childp contains plist for network process.
-       Doc fix: Member kill_without_query is inverse of query-on-exit flag.
+       * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
+       keyword].
 
-       * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
-       (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
-       (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
-       New variables.
-       (NETCONN1_P): New macro.
-       (DATAGRAM_SOCKETS): New conditional symbol.
-       (datagram_address): New array.
-       (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
-       (status_message): Use concat3.
-       (Fprocess_status): Add `listen' status to doc string.  Return `stop'
-       for a stopped network process.
-       (Fset_process_buffer): Update contact plist for network process.
-       (Fset_process_filter): Ditto.  Don't enable input for stopped
-       network processes.  Server must listen, even if filter is t.
-       (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
-       New functions.
-       (Fprocess_kill_without_query): Removed.  Now defined in simple.el.
-       (Fprocess_contact): Added KEY argument.  Handle datagrams.
-       (list_processes_1): Optionally show only processes with the query
-       on exit flag set.  Dynamically adjust column widths.  Omit tty
-       column if not needed.  Report stopped network processes.
-       Identify server and datagram network processes.
-       (Flist_processes): New optional arg `query-only'.
-       (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
-       (conv_lisp_to_sockaddr, set_socket_options)
-       (network_process_featurep, unwind_request_sigio): New helper functions.
-       (Fprocess_datagram_address, Fset_process_datagram_address):
-       (Fset_network_process_options): New lisp functions.
-       (Fopen_network_stream): Removed.  Now defined in simple.el.
-       (Fmake_network_process): New lisp function.  Code is based on previous
-       Fopen_network_stream, but heavily reworked with new property list based
-       argument list, support for datagrams, server processes, and local
-       sockets in addition to old client-only functionality.
-       (server_accept_connection): New function.
-       (wait_reading_process_input): Use it to handle incoming connects.
-       Do not enable input on a new connection if process is stopped.
-       (read_process_output): Handle datagram sockets. Use 2k buffer for them.
-       (send_process): Handle datagram sockets.
-       (Fstop_process, Fcontinue_process): Apply to network processes.  A stopped
-       network process is indicated by setting command field to t .
-       (Fprocess_send_eof): No-op if datagram connection.
-       (Fstatus_notify): Don't read input for a stream server socket or a
-       stopped network process.
-       (init_process): Initialize datagram_address array.
-       (syms_of_process): Intern and staticpro new variables, defsubr new
-       functions.
+2001-12-09  Eli Zaretskii  <eliz@is.elta.co.il>
 
-2002-03-16  Jason Rumney  <jasonr@gnu.org>
+       * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
 
-       * w32fns.c (w32_to_all_x_charsets): Return correct type in
-       startup case.
+       * s/hpux10.h (srand48): Don't undefine.
 
-2002-03-16  Richard M. Stallman  <rms@gnu.org>
+2001-12-09  Jason Rumney  <jasonr@gnu.org>
 
-       * xdisp.c (redisplay_internal, redisplay_windows):
-       Use list_of_error to call internal_condition_case_1.
-       (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
-       so as to catch all errors with no possibility of debugger redisplay.
-       (list_of_error): New variable.
-       (syms_of_xdisp): Init and staticpro it.
+       * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
+       Add     comment to explain where the struct came from.
+       (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
+       (add_menu_item): Process pop-up menus first to avoid memory leak.
+       (add_menu_item, w32_menu_display_help): Use `help' field as
+       Lisp_Object.
+       (w32_free_submenu_strings): Only free owner-drawn strings.
 
-       * print.c (print_object): Delete `\ ' from printed rep of frame.
+2001-12-09  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-2002-03-15  Eli Zaretskii  <eliz@is.elta.co.il>
+       * COPYING: Moved back.
 
-       * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
-       until its implementation is fixed.
+       * charset.c (char_to_string_1, translate_char, Fdefine_charset):
+       Add parentheses around && within ||.
 
-2002-03-14  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+       * indent.c (compute_motion): Likewise.
 
-       * xfns.c (png_load): Remove unused variable `gamma_str'.
+       * intervals.c (merge_properties_sticky): Likewise.
 
-2002-03-14  Richard M. Stallman  <rms@gnu.org>
+       * coding.c (setup_coding_system, shrink_encoding_region)
+       (Fdecode_sjis_char): Likewise.
 
-       * xfns.c (x_real_positions): Handle failure in XQueryTree.
+2001-12-07  Andreas Schwab  <schwab@suse.de>
 
-2002-03-14  Miles Bader  <miles@gnu.org>
+       * xdisp.c (display_mode_element): Don't read past end of string if
+       it ends with '%'.
 
-       * intervals.c (adjust_for_invis_intang): New function.
-       (set_point_both): Use `adjust_for_invis_intang' to do most of the
-       work for dealing with invisible+intangible regions.  Do so before
-       and after both forward and backward movements, to handle both
-       front-sticky and rear-sticky cases.
-       * textprop.c (text_property_stickiness): Function moved here from
-       `editfns.c'.
-       * intervals.h (text_property_stickiness): New declaration.
-       * editfns.c (char_property_eq): Function removed.
-       (text_property_stickiness): Function moved to `textprop.c'.
+       * alloc.c (inhibit_garbage_collection): Don't exceed value an int
+       can hold.
 
-2002-03-13  Jason Rumney  <jasonr@gnu.org>
+       * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
+       Rename from most_positive_fixnum and most_negative_fixnum, resp., and
+       type changed to Lisp_Object.
+       (syms_of_data): DEFVAR_LISP them.
 
-       * config.in: Add STRFTIME_NO_POSIX2.
+2001-12-07  Richard M. Stallman  <rms@gnu.org>
 
-       * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
-       and %OX when underlying strftime does not.
+       * callproc.c (init_callproc): Set Vdata_directory based on the source
+       location whenever Emacs was run uninstalled.
 
-2002-03-13  Stefan Monnier  <monnier@cs.yale.edu>
+2001-12-06  Paul Eggert  <eggert@twinsun.com>
 
-       * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
-       Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
-       line) to avoid annoying flicker.
-       (xm_scroll_callback): Get rid of the now unnecessary kludge.
-       (XTread_socket): Mark it static.
+       * config.in (HAVE_WORKING_VFORK): New #undefs.
+       * process.c (create_process):
+       Use HAVE_WORKING_VFORK, not HAVE_VFORK.
+       * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
+       * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
+       * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
+       * m/intel386.h (HAVE_VFORK): Likewise.
+       * m/mips-siemens.h (HAVE_VFORK): Likewise.
+       * m/mips.h (HAVE_VFORK): Likewise.
+       * s/freebsd.h (vfork): Remove #define.
+       * s/lynxos.h (HAVE_VFORK): Remove #undef.
+       * s/usg5-4-2.h: Fix comment about vfork.
 
-       * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
+2001-12-06  Richard M. Stallman  <rms@gnu.org>
 
-2002-03-13  Kim F. Storm  <storm@cua.dk>
+       * s/hpux10.h (random): Add undef.
+       (HAVE_RANDOM): Define it just once.
 
-       * puresize.h (BASE_PURESIZE): Increase to 775000.
+2001-12-06  Stefan Monnier  <monnier@cs.yale.edu>
 
-2002-03-12  Juanma Barranquero  <lektu@terra.es>
+       * eval.c: Undo last change: the standard syntax is not wanted.
 
-       * editfns.c (syms_of_editfns): Fix typo.
+2001-12-06  Eli Zaretskii  <eliz@is.elta.co.il>
 
-2002-03-12  Gerd Moellmann  <gerd@gnu.org>
+       * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
+       scroll bars of the frame before deleting the frame itself.  If the
+       frame has a widget, delete the frame with XtDestroyWidget, and do
+       not call XDestroyWindow before that.
 
-       * xsmfns.c: Include stdio.h because termhooks.h needs it.
-       Include termopt.h for interrupt_input.
+2001-12-06  Kim F. Storm  <storm@cua.dk>
 
-2002-03-11  Andreas Schwab  <schwab@suse.de>
+       * xfns.c (x_report_frame_params): Return actual fringe widths.
 
-       * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
+       * w32fns.c (x_report_frame_params): Return actual fringe widths.
 
-2002-03-11  Gerd Moellmann  <gerd@gnu.org>
+2001-12-05  Andrew Innes  <andrewi@gnu.org>
 
-       * xterm.c (note_mouse_movement): Put code for
-       x_autoselect_window_p in #if 0.
+       * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
+       excessively large.
 
-       * lread.c (Fload): Don't assume that message_with_string uses the
-       string it is given like a C string.
+       * insdel.c (make_gap_larger): New function.
+       (make_gap_smaller): New function.
+       (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
+       Call make_gap_smaller if arg is negative.
 
-2002-03-10  Jan D.  <Jan.Djarv@mbox200.swipnet.se>
+2001-12-04  Stefan Monnier  <monnier@cs.yale.edu>
 
-       * xterm.h: Extern declare x_session_check_input () and
-       x_session_initialize ().
+       * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
+       Pass a dummy argument when calling interrupt_signal.
+       (parse_menu_item): Mark disabled items before checking for empty def.
+       (read_char_minibuf_menu_prompt): Make safety more visible.
+       (read_key_sequence): Add a `first_unbound' variable.
+       Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
+       unbound prefix as soon as we can detect it.
 
-       * xterm.c: Added calls to x_session_check_input () and
-       x_session_initialize ().
+       * doc.c (Fsnarf_documentation): Add prototype.
+       (get_doc_string): Handle negative arguments.
+       (Fdocumentation): Use AREF and ASIZE.
+       Move the calls to get_doc_string to a single place.
+       Don't confuse an interactive-spec for a docstring reference.
+       (Fdocumentation_property): Take advantage of the fact that
+       get_doc_string now ignores the sign of the docstring position.
 
-       * termhooks.h (enum event_kind): Added save_session_event.
+       * eval.c: Use standard syntax for usage in docstrings.
 
-       * keyboard.c: Added Emacs event save_session_event.
+2001-12-03  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-       * emacs.c (main): Added call to syms_of_xsmfns ().
+       * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief` an option.
 
-       * lisp.h: Extern declare syms_of_xsmfns ().
+2001-12-02  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-       * config.in: Added HAVE_X_SM
+       * xterm.c (x_draw_image_relief): Use predefined macro instead of
+       constant when the value of `tool_bar_button_relief' is negative.
 
-       * Makefile.in: Added test for HAVE_X_SM and added new file xsmfns.c
+2001-12-02  Richard M. Stallman  <rms@gnu.org>
 
-       * xsmfns.c: New file for X session management.
+       * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
+       (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
 
-2002-03-09  Jason Rumney  <jasonr@gnu.org>
+       * fileio.c (read_non_regular): Delete Fsignal call.
 
-       * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
-       read-only when setting modified time.
+2001-12-01  Stefan Monnier  <monnier@cs.yale.edu>
 
-2002-03-08  Gerd Moellmann  <gerd@gnu.org>
+       * lisp.h (run_hook_list_with_args): Undo last change.
 
-       * xdisp.c (move_it_vertically_backward): At the end of the
-       function, when moving forward by lines, treat terminal frames
-       specially.
+2001-12-01  Gerd Moellmann  <gerd@gnu.org>
 
-       * keyboard.c (echo_char): Make sure to add a separator between
-       keys even if echo_dash hasn't been called.
+       * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
 
-       * xdisp.c: Use new string macros.
-       (update_echo_area): Pass number of bytes to message3 instead of
-       number of chars.
-       (set_message_1): Don't access a string's size_byte directly.
-       (decode_mode_spec_coding): Use number of bytes of eoltype string
-       instead number of chars.
+2001-12-01  Jason Rumney  <jasonr@gnu.org>
 
-       * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
+       * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
 
-2002-03-08  Juanma Barranquero  <lektu@terra.es>
+       * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
+       [!WM_MOUSELEAVE]: Define.
 
-       * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
-       24-bit.
+       * w32menu.c (current_popup_menu, get_menu_item_info):
+       (set_menu_item_info): New vars.
+       (set_frame_menubar): Doc fix clarifying GC interaction with menus.
+       (w32_menu_show): Set current_popup_menu.
+       (add_menu_item): Allocate new strings for owner-drawn menu items
+       and help strings.
+       Use owner-draw for disabled menu items again.
+       (w32_menu_display_help): Ignore owner-drawn items and popup menus.
+       (w32_free_submenu_strings, w32_free_menu_strings): New functions.
 
-2002-03-06  Jason Rumney  <jasonr@gnu.org>
+       * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
+       (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
+       <WM_EXITMENULOOP>: Free menu strings.
+       <WM_MOUSELEAVE>: Stop tracking mouse.
+       (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
 
-       * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
+       * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
+       and mouse face.
 
-2002-03-06  Gerd Moellmann  <gerd@gnu.org>
+2001-12-01  Kim F. Storm  <storm@cua.dk>
 
-       * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
-       (cancel_echoing, echo_length, echo_truncate): Changed to
-       work with new kboard definition.
-       (echo_now): Use message3_nolog instead of message2_nolog.
+       The following changes add left-fringe and right-fringe
+       frame parameters to adjust fringe widths, or remove one or
+       both fringes.
 
-       * alloc.c (mark_kboards): Mark echo_string.
+       * frame.h (struct frame): Remove trunc_area_pixel_width and
+       trunc_area_cols fields.
+       (Qleft_fringe, Qright_fringe): Declare.
+       (FRAME_RIGHT_FRINGE_WIDTH): New macro.
 
-       * keyboard.h (ECHOBUFSIZE): Removed.
-       (struct kboard): Member echoptr removed, member echobuf renamed
-       to echo_string.
+       * frame.c (Qleft_fringe, Qright_fringe): New vars.
+       (syms_of_frame): Initialize them.
 
-       * xdisp.c (message_with_string): Use Fformat instead of doprnt and
-       message3 instead of message2 to display the message using STRING's
-       text properties.
+       * window.c (coordinates_in_window): Handle separate left and right
+       fringe widths.
 
-2002-03-05  Andreas Schwab  <schwab@suse.de>
+       * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
+       and fringe_cols fields.
+       (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
+       (FRAME_X_FRINGE_COLS): Use fringe_cols field.
+       (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
+       (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
+       (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
+       (x_compute_fringe_widths): Add prototype.
 
-       * xdisp.c (hscroll_margin): Change to EMACS_INT.
+       * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
+       fill fringe evenly with small dashes.
+       (x_draw_fringe_bitmap): Clear background if necessary. Align and
+       clip the new ZV bitmap to avoid jitter between rows.
+       (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
+       background.  Don't draw fringe bitmaps if fringe width is zero.
+       (x_compute_fringe_widths): New function.
+       (x_new_font, x_set_window_size_1): Use it.
 
-2002-03-05  Per Abrahamsen  <abraham@dina.kvl.dk>
+       * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
+       (x_set_frame_parameters): Process `font' parameter before other
+       parameters as fringe widths depend on it.
+       (x_set_fringe_width): New function.
+       (x_figure_window_size): Use x_compute_fringe_widths.
+       (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
+       parameters.
 
-       * frame.c (default-frame-alist): Explain that setting it doesn't
-       affect existing frames.
+       * widget.c (set_frame_size): Use x_compute_fringe_widths.
+       (EmacsFrameSetCharSize): Ditto.
 
-2002-03-05  Stefan Monnier  <monnier@cs.yale.edu>
+       * w32term.h: Merged changes from xterm.h.
+       * w32term.c: Merged changes from xterm.c.
+       * w32fns.c: Merged changes from xfns.c.
 
-       * indent.c (skip_invisible): Fix my brain fart.
+2001-11-29  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-       * dispnew.c (sit_for): Don't wait if executing a kbd macro.
+       * COPYING: Removed.
 
-2002-03-04  Stefan Monnier  <monnier@cs.yale.edu>
+2001-11-29  Dave Love  <fx@gnu.org>
 
-       * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
-       * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
-       * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
-       * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
-       and variables to use EMACS_INT instead of just int.
+       * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
+       extra extra slot.
+       (detect_coding_mask): Fix call of detect_coding_iso2022.
 
-       * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
+2001-11-29  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-2002-03-04  Eli Zaretskii  <eliz@is.elta.co.il>
+       * fileio.c (file-name-coding-system)
+       (default-file-name-coding-system): Doc fix (links to referenced
+       variables added).
 
-       * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
-       environment, pass it down with corrected value.
+2001-11-28  Stefan Monnier  <monnier@cs.yale.edu>
 
-2002-03-04  Pavel Jan\e,Bm\e(Bk  <Pavel@Janik.cz>
+       * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
+       Add dummy uses of gcproN variables.
 
-       * lread.c (read_filtered_event): Do not call start_hourglass
-       before returning.
+       * category.c (describe_category, describe_category_1)
+       (Fdescribe_categories): Remove.  (Moved to lisp/help-fns.el.)
+       (syms_of_category): Don't defsubr Sdescribe_categories.
 
-2002-03-04  Juanma Barranquero  <lektu@terra.es>
+2001-11-28  Richard M. Stallman  <rms@gnu.org>
 
-       * w32term.c (x_display_and_set_cursor): Fix typo.
+       * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
 
-2002-03-03  Richard M. Stallman  <rms@gnu.org>
+       * Makefile.in (lispdir): New variable, referring to build dir.
+       (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
 
-       * fileio.c (Fmake_temp_name): Doc fix.
+2001-11-28  Andrew Innes  <andrewi@gnu.org>
 
-2002-03-03  Gary Wong  <gtw@gnu.org>
+       * w32menu.c (w32_menu_display_help): Actually add the new argument
+       OWNER.
 
-       * termcap.c [!emacs]: Replace ospeed for building standalone
-       libtermcap, for binary compatibility.
+2001-11-28  Jason Rumney  <jasonr@gnu.org>
 
-       * tparam.c [!emacs]: Move #define of bcopy to after string.h.
+       * w32menu.c (add_menu_item): Do not use owner-draw for disabled
+       menu items.  From David Ponce <dponce@wanadoo.fr>.
+       (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
+       conditionally.
+       (w32_menu_display_help): New argument OWNER. Rewritten to store a
+       help event in the owner frame's keyboard buffer.
 
-2002-03-03  Richard M. Stallman  <rms@gnu.org>
+       * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
+       (Fx_show_tip): Don't subtract last width from row width.
 
-       * xrdb.c (file_p): Rename arg `path' to `filename'.
+       * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
+       (w32_read_socket): Use EQ to compare frames.
 
-       * abbrev.c (Fexpand_abbrev): Increment plist as use count
-       only if it is an integer.
+2001-11-28  Gerd Moellmann  <gerd@gnu.org>
 
-       * xfns.c (png_load): Set screen_gamma based on f->gamma.
-       If png_get_sRGB gives an answer, call png_set_gamma
-       using the default image gamma value.
+       * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
+       OVERLAPS_P.
 
-       * lread.c (read1): When reading from a file, default string to
-       multibyte only if it has some multibyte characters.
+2001-11-28  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-       * print.c (print_object): Output multibyte chars 128...255
-       using \x even if ! print_escape_multibyte.
+       * xdisp.c (message_dolog): Remove unused variables `gcpro2',
+       `gcpro3' and `gcpro4'.
 
-       * xdisp.c (display_mode_element): Move the places where
-       bytepos, charpos, this, and lisp_string are set.
-       Use lisp_string to set bytepos.
+       * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
 
-       * xdisp.c (redisplay_internal):
-       Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
+2001-11-28  Stefan Monnier  <monnier@cs.yale.edu>
 
-       * xdisp.c (display_mode_element): Merge properties specified with
-       :propertize onto those that come with the string.
+       * ccl.c: Use AREF and ASIZE.
 
-2002-03-03  Eli Zaretskii  <eliz@is.elta.co.il>
+2001-11-27  Stefan Monnier  <monnier@cs.yale.edu>
 
-       * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
-       automatic-hscrolling.  Users changed.
-       <hscroll-margin>: Renamed from automatic-hscroll-margin.
-       Users changed.
-       <hscroll-step>: Renamed from automatic-hscroll-step.  Users changed.
+       * lisp.h (run_hook_list_with_args): Remove.
+       (LIST_END_P): Fix call to wrong_type_argument.
+       (make_fixnum_or_float): Use EMACS_INT rather than int.
 
-2002-03-02  Eli Zaretskii  <eliz@is.elta.co.il>
+2001-11-26  Stefan Monnier  <monnier@cs.yale.edu>
 
-       * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
+       * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
+       (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
 
-2002-03-02  Kim F. Storm  <storm@cua.dk>
+       * eval.c: Use AREF and ASIZE.
+       (Ffetch_bytecode): Add the file name to the error message.
 
-       * window.c (Fminibuffer_selected_window): New function.
-       (syms_of_window): Defsubr it.
+       * fileio.c (Ffind_file_name_handler): Give precedence to handlers
+       which match the end of the file-name.
+       (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
+       is not a valid env var, but leave it as is instead.
 
-2002-03-01  Kim F. Storm  <storm@cua.dk>
+       * keymap.c (access_keymap): Handle t bindings like nil bindings.
+       Make nil bindings in char-tables transparent.
+       (store_in_keymap): Turn a nil binding into a t binding for char-tables.
 
-       * window.h (struct window): New member phys_cursor_width.
+2001-11-26  Richard M. Stallman  <rms@gnu.org>
 
-       * window.c (make_window, replace_window): Init phys_cursor_width.
+       * textprop.c (set_text_properties_1): Allow START, END in either order.
+       Do nothing if range is empty.
 
-       * xterm.c (x_display_and_set_cursor): Blink box cursor using
-       hollow box cursor.  Blink bar cursor using 1 pixel wide bar.
+       * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
 
-       * w32term.c (x_display_and_set_cursor): Blink box cursor using
-       hollow box cursor.  Blink bar cursor using 1 pixel wide bar.
+       * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
+       (clean): Not here.
 
-       * lisp.h (GCPRO6): New macro.
+2001-11-25  Stefan Monnier  <monnier@cs.yale.edu>
 
-       * process.c (Fopen_network_stream): Use GCPRO6.
+       * textprop.c (set_text_properties_1): Clearly mark that the
+       interval should not be empty.
 
-2002-03-01  Kim F. Storm  <storm@cua.dk>
+       * intervals.c (graft_intervals_into_buffer):
+       Don't call set_text_properties_1 on an empty interval.
 
-       * process.c (Qconnect, Qfailed): New variables.
-       (syms_of_process): Intern and staticpro them.
-       (Fprocess_status): Document connect and failed return values.
-       [NON_BLOCKING_CONNECT]: New conditional.
-       (connect_wait_mask, num_pending_connects): New variables.
-       (status_message): Convert Qfailed status.
-       (Fopen_network_stream): Added support for non-blocking connect.
-       New optional args: filter, sentinel, non_blocking.  Doc updated.
-       [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]:  Merged common code.
-       (deactivate_process): Handle pending non-blocking connect.
-       (wait_reading_process_input): Poll for status of non-blocking
-       connects.  Exec sentinel directly when connect succeeds.
-       (status_notify): Don't read process output if not yet connected.
+2001-11-25  Richard M. Stallman  <rms@gnu.org>
 
-2002-02-28  Kim F. Storm  <storm@cua.dk>
+       * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
 
-       * window.c: (minibuf_selected_window): Renamed from
-       Vminibuf_selected_window.  Users changed.
-       (syms_of_window): Staticpro it.
+       * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
+       don't lose the data in it.
 
-2002-02-26  Kim F. Storm  <storm@cua.dk>
+2001-11-25  Juanma Barranquero  <lektu@terra.es>
 
-       The following changes add a new Vminibuf_selected_window variable
-       which is similar to Vminibuf_scroll_window, but which is only set
-       on entry to the minibuffer (from a non-minibuffer window):
+       * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
 
-       * window.c: (Vminibuf_selected_window): New variable.
-       (struct save_window_data): New member minibuf_selected_window.
-       (Fset_window_configuration): Restore Vminibuf_selected_window.
-       (Fcurrent_window_configuration): Save Vminibuf_selected_window.
-       Set minibuf_scroll_window member to nil if minibuf_level is 0.
-       (compare_window_configurations): Compare minibuf_selected_window.
+       * buffer.c (Fkill_buffer): Use Frun_hooks, not Vrun_hooks.
 
-       * window.h: (Vminibuf_selected_window): Declare extern.
+       * print.c (temp_output_buffer_setup): Use Frun_hooks, not Vrun_hooks.
 
-       * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
-       entry to minibuffer or on entry from a non-minibuffer window.
+2001-11-25  Stefan Monnier  <monnier@cs.yale.edu>
 
-       * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
-       Vminibuf_selected_window instead of Vminibuf_scroll_window.
+       * xfaces.c (merge_face_heights): Coerce back to int explicitly.
 
-       * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
-       instead of Vminibuf_scroll_window when deciding in which window
-       the region should be highlighted.  Consequently, the region remains
-       highlighteded even when a completion buffer is also displayed.
+2001-11-25  Eli Zaretskii  <eliz@is.elta.co.il>
 
-2002-02-26  Eli Zaretskii  <eliz@is.elta.co.il>
+       * window.c (Fset_window_vscroll): Doc fix.  From Kalle Olavi
+       Niemitalo <kon@iki.fi>.
 
-       * fileio.c (Fsubstitute_in_file_name): Fix the change from
-       2002-02-08.
+2001-11-25  Jason Rumney  <jasonr@gnu.org>
 
-       * xselect.c (Qcompound_text_with_extensions): Renamed from
-       Qcompound_text_no_extensions.
-       (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
+       * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
 
-2002-02-26  Juanma Barranquero  <lektu@terra.es>
+       * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
+       (Fx_show_tip): Block input during frame creation.
+       (Fx_show_tip, Fx_hide_tip): Enable.
 
-       * w32proc.c (syms_of_ntproc): Doc fix.
+2001-11-24  Richard M. Stallman  <rms@gnu.org>
 
-2002-02-24  Pavel Jan\e,Bm\e(Bk  <Pavel@Janik.cz>
+       * lread.c (Fload): Detect recursive load error for more than 3
+       nestings of the same file.
+       (Vrecursive_load_depth_limit): Variable deleted.
+       (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
 
-       * intervals.h: Include "dispextern.h" unconditionally.
+2001-11-24  Jason Rumney  <jasonr@gnu.org>
 
-2002-02-24  Jason Rumney  <jasonr@gnu.org>
+       * xfns.c (compute_tip_xy): Initialize root_x and root_y from
+       mouse position if either left or top is not specified.
 
-       * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
-       and disp-table.elc.
-       (lisp): Add emacs-lisp/backquote.elc.
+       * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
+       <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
+       (my_create_tip_window, Fx_show_tip): Adjust size for external border.
+       (my_create_tip_window): Assign tip_window.
+       (x_create_tip_frame): Use same defaults as X.
+       (compute_tip_xy): Remove unused variable.  Use full screen width.
+       (Fx_show_tip): Do not double height. Call ShowWindow directly.
 
-2002-02-24  Kim F. Storm  <storm@cua.dk>
+       * w32term.c (x_after_update_window_line): Doc fix.
+       (w32_read_socket): Doc fix.  Avoid SET_FRAME_GARBAGED for tip
+       frames.
+       <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
 
-       * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
-       The validation of the event type was too strict as it didn't
-       allow string events; buffer names are used in bindings for
-       menu-bar-select-buffer (see `menu-bar-update-buffers').
+       * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
+       for all Windowed systems.
 
-2002-02-23  Kim F. Storm  <storm@cua.dk>
+2001-11-23  Eli Zaretskii  <eliz@is.elta.co.il>
 
-       The following changes rework my patch of 2002-02-06 which
-       added command remapping by entering the commands directly into
-       the keymaps.  Now, command remapping uses an explicit `remap'
-       prefix in the keymaps, i.e. [remap COMMAND].
+       * msdos.c (IT_clear_screen): If the frame's faces are not yet
+       realized, use the initial screen colors to clear the screen.
 
-       * keymap.c (Qremap, remap_command_vector): New variables.
-       (is_command_symbol): Removed function.
-       (Fdefine_key): No longer accept a symbol for KEY.
-       Added validation of [remap COMMAND] argument for KEY.
-       The DEF is no longer required to be a symbol when remapping a command.
-       (Fremap_command): New function to remap command through keymaps.
-       (Flookup_key): Perform command remapping initiated by
-       Fremap_command directly for speed.
-       (Fkey_binding): Use Fremap_command for command remapping.
-       (where_is_internal): Handle new command remapping representation.
-       (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
-       staticpro them.  Defsubr Fremap_command.
+2001-11-23  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-       * keymap.h (Fremap_command): Declare extern.
-       (is_command_symbol): Remove extern.
+       * textprop.c (Fset_text_properties): Remove unused variables
+       `unchanged', `prev_changed', `s' and `len'.
 
-       * keyboard.c (command_loop_1): Use Fremap_command for command
-       remapping; now try command remapping for all symbols.
+       * search.c (Freplace_match): Remove unused variable `inslen'.
 
-2002-02-23  Eli Zaretskii  <eliz@is.elta.co.il>
+       * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
 
-       * coding.h (run_pre_post_conversion_on_str): Add prototype.
+2001-11-22  Jason Rumney  <jasonr@gnu.org>
 
-2002-02-23  Jason Rumney  <jasonr@gnu.org>
+       * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
+       (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
+       (my_create_tip_window): New function.
+       (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
+       (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
 
-       * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
-       on the string before encoding it.
-       (Fw32_get_clipboard_data): Run post-read-conversion on the string
-       after decoding it.
+2001-11-20  Jason Rumney  <jasonr@gnu.org>
 
-       * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
+       * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
+       (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
 
-2002-02-23  Pavel Jan\e,Bm\e(Bk  <Pavel@Janik.cz>
+       * w32fns.c (Vw32_system_coding_system): Remove.
+       (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
 
-       * w32term.c (enter_timestamp): Remove unused static variable to
-       prevent warning.
+2001-11-19  Stefan Monnier  <monnier@cs.yale.edu>
 
-       * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
+       * fileio.c (Fwrite_region): Move choose_write_coding_system to
+       after build_annotations.
 
-2002-02-23  Eli Zaretskii  <eliz@is.elta.co.il>
+       * syntax.c (describe_syntax): Add dummy arg.
+       (describe_syntax_1): Update call to describe_vector.
 
-       * w16select.c (Fw16_get_clipboard_data): Fix last change.
+       * category.c (describe_category): Add dummy arg.
+       (describe_category_1): Update call to describe_vector.
 
-       * xselect.c (selection_data_to_lisp_data): Fix last change.
+       * keymap.c (Fdescribe_vector): Add `describer' parameter.
+       (describe_command, describe_translation): Add dummy second param.
+       (describe_map): Call elt_describer with two arguments.
+       (describe_vector_princ): Add `fun' parameter.
+       Call it instead of the hardcoded `princ'.
+       (describe_vector): Add arg `args'.
+       Pass it as a new second argument to elt_describer.
 
-2002-02-22  Jason Rumney  <jasonr@gnu.org>
+       * keymap.h (describe_vector): Update prototype.
 
-       * w32term.h (struct w32_output): New member menu_command_in_progress.
+       * frame.c: Don't include keymap.h any more.
+       (keys_of_frame): Remove.
 
-       * w32menu.c (menubar_selection_callback): Free the menu and
-       clear the menu_command_in_progress flag.
+       * lisp.h (keys_of_frame): Remove declaration.
 
-       * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
-       (menu_free_timer): New variable.
-       (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
-       (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
-       <WM_EXITMENULOOP>: Delay before freeing menu.  Do nothing if a
-       menu command is in progress.
-       <WM_COMMAND>: Set the menu_command_in_progress flag.
-       Kill any menu_free_timer that is running.
+       * emacs.c (main): Don't call `keys_of_frame' any more.
 
-       * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
-       Call ExtTextOutA rather than ExtTextOut.
+2001-11-14  Andreas Schwab  <schwab@suse.de>
 
-2002-02-22  Eli Zaretskii  <eliz@gnu.org>
+       * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
+       if defined, 0 otherwise.
+       (MAP_FAILED): Define if not defined and use it to test mmap failure.
+       (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
 
-       * puresize.h (BASE_PURESIZE): Increase to 755000.
+2001-11-19  Richard M. Stallman  <rms@gnu.org>
 
-2002-02-22  Eli Zaretskii  <eliz@is.elta.co.il>
+       * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
 
-       * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
-       on the string before encoding it.
-       (Fw16_get_clipboard_data): Run post-read-conversion on the string
-       after decoding it.
+2001-11-18  Jason Rumney  <jasonr@gnu.org>
 
-2002-02-22  Eli Zaretskii  <eliz@is.elta.co.il>
+       * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
+       (x_draw_bar_cursor): If the background color of the glyph under
+       the cursor equals the frame's cursor color, use the glyph's
+       foreground color for drawing the bar cursor.
+       (x_after_update_window_line): Clear internal border in different
+       circumstances.
+       (w32_set_vertical_scroll_bar): Check for width and height > 0.
+       (w32_draw_relief_rect): Correct relief by 1 pixel.
+       (x_set_glyph_string_background_width):
+       Set extends_to_end_of_line_p if the row's fill_line_p is set and
+       drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
+       (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
+       if cursor_in_non_selected_windows is false.
+       (show_mouse_face): Clean up.  Recognize overwritten cursor differently.
+       (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
+       Notice if cursor gets overwritten.
+       (notice_overwritten_cursor): Renamed from
+       note_overwritten_text_cursor.  Rewritten to take glyph widths
+       into account, and to take X positions as parameters.
+       (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
+       around call to x_draw_glyphs.
+       (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
+       `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
+       color to use for image glyph reliefs.
+       (x_draw_image_relief): Accept zero tool_bar_button_relief.
+       (glyph_rect): Remove unused variable `area'.
 
-       Support for ICCCM  Extended Segments in X selections:
+       * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
+       some items.
+       (x_set_internal_border_width): Set frame garbaged when window
+       doesn't exist yet.
+       (Fx_create_frame): Accept zero tool_bar_button_relief.
+       (x_clear_image_1, four_corners_best, image_background)
+       (image_background_transparent): New functions.
+       (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
+       (gs_format): Add `:background' entry.
+       (lookup_image): Set IMG's background color if specified.
+       (pbm_load, xbm_load_image, png_load): Set IMG's background field
+       when appropriate.
+       (x_clear_image_1): Reset `background_valid' and
+       `background_transparent_valid' fields.
+       (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
+       calculating it here.  Set IMG's background_transparent field.
+       (enum xpm_keyword_index): Add XPM_BACKGROUND.
+       (enum png_keyword_index): Add PNG_BACKGROUND.
+       (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
+       (enum tiff_keyword_index): Add TIFF_BACKGROUND.
+       (enum gif_keyword_index): Add GIF_BACKGROUND.
+       (enum gs_keyword_index): Add GS_BACKGROUND.
+       (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
+       Pre-calculate image background color where necessary.
+       (x_create_x_image_and_pixmap, xbm_load, gs_load):
+       Use display info's n_cbits entry for screen depth.
+       (Fx_show_tip): Remove unused variables `buffer', `top',
+       `left', `max_width' and `max_height'.
 
-       * xselect.c <Qcompound_text_no_extensions>: New variable.
-       (syms_of_xselect): Intern and staticpro it.
-       (selection_data_to_lisp_data): Run post-read-conversion on decoded
-       selection text.
-       (lisp_data_to_selection_data): If next-selection-coding-system is
-       compound-text-no-extensions, set the type of selection to be
-       compound-text.
+       * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
 
-       * xterm.h (x_encode_text): Update prototype.
+2001-11-18  Gerd Moellmann  <gerd@gnu.org>
 
-       * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
-       callers changed.  If SELECTIONP is non-zero, run the
-       pre-write-conversion function before encoding the selection text.
+       * puresize.h (BASE_PURESIZE): Increase to 750000.
 
-2002-02-21  Kim F. Storm  <storm@cua.dk>
+2001-11-18  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-       * frame.c (syms_of_frame): Change mouse-highlight default to t.
+       * frame.c (Fframe_live_p): Doc fix.
 
-       * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
-       Correct composing of language-change event.
+2001-11-18  Richard M. Stallman  <rms@gnu.org>
 
-2002-02-20  Kim F. Storm  <storm@cua.dk>
+       * xdisp.c (message_dolog_marker1, message_dolog_marker2)
+       (message_dolog_marker3): New static variables hold three markers.
+       (syms_of_xdisp): Initialize and staticpro them.
+       (message_dolog): Use message_dolog_marker1..3 instead of
+       allocating markers each time.  Unchain them when done.
 
-       * keyboard.c (menu_bar_items): Don't include keymap or local-map
-       bindings at PT when building menu (the menu is not updated often
-       enough for this to work reliable).
-       (tool_bar_items): Likewise.
-       (current_active_maps): Removed unused (and buggy) function.
+2001-11-17  Richard M. Stallman  <rms@gnu.org>
 
-2002-02-20  Pavel Jan\e,Bm\e(Bk  <Pavel@Janik.cz>
+       * doc.c (Fsnarf_documentation): Doc fix.
 
-       * xfns.c (gif_load): Use correct width and height for GIF images.
+2001-11-17  Andreas Schwab  <schwab@suse.de>
 
-2002-02-19  Eli Zaretskii  <eliz@is.elta.co.il>
+       * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
 
-       * floatfns.c (Fatan): Accept an optional second arg and call
-       atan2 if passed 2 args.
+2001-11-17  Richard M. Stallman  <rms@gnu.org>
 
-2002-02-18  Jason Rumney  <jasonr@gnu.org>
+       * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
 
-       * w32term.c (glyph_rect): Determine the row and glyph more precisely.
+2001-11-17  Jason Rumney  <jasonr@gnu.org>
 
-2002-02-17  Jason Rumney  <jasonr@gnu.org>
+       * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
 
-       * w32term.c (x_autoselect_window_p): New variable.
-       (syms_of_w32term): DEFVAR_BOOL and initialize it.
-       (note_mouse_movement): Use it.
+2001-11-17  Gerd Moellmann  <gerd@gnu.org>
 
-       * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
+       * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
+       with invalid position.
 
-       * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
+2001-11-16  Richard M. Stallman  <rms@gnu.org>
 
-       * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
-       New variables.
-       (syms_of_w32fns): Intern and staticpro them.
-       (x_frame_parms) <"fullscreen">: New parameter.
-       (x_fullscreen_move, x_set_fullscreen): New functions.
-       (x_set_frame_parameters): Support Qfullscreen.
-       (x_real_positions): Save x/y_pixels_diff frame params.
-       (x_figure_window_size): Support full-screen frames.
-       (Fx_create_frame): Default the fullscreen parameter.
+       * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
 
-       * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
-       (x_fullscreen_adjust): New functions.
-       (w32_read_socket) <WM_WINDOWPOSCHANGED>:  Don't resize to
-       fullscreen.  Call x_check_fullscreen_move, and set the
-       want_fullscreen member of output_data.w32
-       <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
+       * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
+       * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
+       * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
 
-       * w32term.h: New enum for FULLSCREEN_* constants.
-       (struct w32_output): New members want_fullscreen, x_pixels_diff,
-       y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
-       (x-fullscreen-adjust): New prototype.
+       * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
 
-2002-02-17  Kim F. Storm  <storm@cua.dk>
+2001-11-16  Stefan Monnier  <monnier@cs.yale.edu>
 
-       * frame.c: (Vmouse_highlight): New variable.
-       (syms_of_frame): DEFVAR_LISP it.
+       * fileio.c (build_annotations): Split off the tail.
+       (build_annotations_2): New fun.  Extracted from build_annotations.
+       (Fwrite_region): Split the call to build_annotations into two
+       calls to build_annotations and build_annotations_2.
 
-       * frame.h: (Vmouse_highlight): Declare extern.
+2001-11-16  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-       * xterm.h (struct x_display_info): Add mouse_face_hidden.
+       * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
+       clear_waiting_for_input with argument.
 
-       * xterm.c (disable_mouse_highlight): Removed variable.
-       (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
-       (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
-       (XTread_socket): Turn mouse_face_hidden off after mouse movement,
-       and on after keyboard input.
-       (x_term_init): Initialize mouse_face_hidden.
+       * xterm.h (x_update_cursor): Remove duplicated prototype.
 
-       * msdos.h (struct display_info): Add mouse_face_hidden.
+       * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
 
-       * msdos.c (disable_mouse_highlight): Removed variable.
-       (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
-       (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
-       (internal_terminal_init): Initialize mouse_face_hidden.
-       (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
-       and on after keyboard input.
+       * xterm.c (waiting_for_input): Remove unnecessary declaration.
 
-       * w32term.h (struct w32_display_info): Add mouse_face_hidden.
+       * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
 
-       * w32term.c (disable_mouse_highlight): Removed variable.
-       (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
-       (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
-       (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
-       and on after keyboard input.
-       (w32_initialize_display_info): Initialize mouse_face_hidden.
+2001-11-16  Stefan Monnier  <monnier@cs.yale.edu>
 
-2002-02-16  Eli Zaretskii  <eliz@is.elta.co.il>
+       * fileio.c (choose_write_coding_system): New fun, extracted
+       from Fwrite_region.
+       (Fwrite_region): Use it.
 
-       * msdos.c (last_mouse_window): New variable.
-       (dos_rawgetc): Fix last change--if the mouse is in the same window
-       as recorded in last_mouse_window, don't select this window.
+       * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
+       (funcall_lambda, run_hook_with_args): Make static and add prototype.
+       (ml_apply, find_handler_clause): Add prototype.
 
-       * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
+2001-11-16  Eli Zaretskii  <eliz@gnu.org>
 
-       * msdos.c (x_autoselect_window_p): New variable.
-       (syms_of_msdos): Defvar it.
-       (dos_rawgetc): If x_autoselect_window_p is set, select the window
-       in which the last mouse movement occured, unless it is already
-       selected.
+       * config.in: Add #undef HAVE_COFF_H.
 
-       * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
-       New variables.
-       (syms_of_xdisp): DEVFAR them.
-       (hscroll_window_tree): Use automatic_hscroll_margin and
-       Vautomatic_hscroll_step to compute the amount of window scrolling.
+       * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
+       Required for ISC 4.1.
 
-2002-02-16  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+2001-11-16  Eli Zaretskii  <eliz@is.elta.co.il>
 
-       * xterm.c (x-autoselect-window): New variable.
-       (note_mouse_movement): Use it.
+       * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1.  Reported by
+       Andrew Wiseman <a.wiseman@btclick.com>.
 
-       * keyboard.c: Do not include "systime.h" twice.
+2001-11-16  Kim F. Storm  <storm@cua.dk>
 
-2002-02-15  Andreas Schwab  <schwab@suse.de>
+       The following changes are made to clean up the various internal
+       references to the fringes to actually use the term `fringe' for
+       them.  Previously, they were called `flags areas', `bitmap areas',
+       `left/right side of windows', or implicitly as `flags' or
+       `bitmaps':
 
-       * puresize.h (BASE_PURESIZE): Increase to 9/5.
+       * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
+       Comments fixed. Use renamed symbols.
 
-       * alloc.c (NSTATICS): Increase to 1280.
+       * dispnew.c: Comment fix. Use renamed symbols.
 
-2002-02-15  Kai Gro\e,A_\e(Bjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>
+       * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
+       (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
+       (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
 
-       * alloc.c (NSTATICS): Bump to 1026.
+       * msdos.c: Comment fix.
 
-       * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
-       (Vx_super_keysym): New variables.
-       (syms_of_xterm): DEFVAR_LISP them.
-       (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
-       variables to determine which keys to use for the various modifiers.
+       * w32fns.c: Use renamed symbols.
 
-2002-02-13  Kim F. Storm  <storm@cua.dk>
+       * w32term.c: Comment fixes. Use renamed symbols.
+       (fringe_bitmap_type): Renamed from bitmap_type.
+       (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
+       (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
+       (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
 
-       * window.c: (Vmode_line_in_non_selected_windows): Removed.
-       (mode_line_in_non_selected_windows): New variable.
-       (syms_of_window): DEFVAR_BOOL it.
+       * w32term.h: Comment fixes. Use renamed symbols.
+       (fringes_extra): Renamed from flags_areas_extra.
+       (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
+       (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
+       (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
+       (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
+       (FRAME_X_LEFT_FRINGE_WIDTH):
+       Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
+       (FRAME_X_RIGHT_FRINGE_WIDTH):
+       Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
 
-       * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
-       Use mode_line_in_non_selected_windows.
-       (mode_line_in_non_selected_windows): Declare extern.
-       (Vmode_line_in_non_selected_windows): Removed extern.
+       * widget.c: Use renamed symbols.
 
-2002-02-13  Richard M. Stallman  <rms@gnu.org>
+       * window.c: Comment fixes. Use renamed symbols.
+       (coordinates-in-window-p): Doc fix.
 
-       * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
-       (Fthis_single_command_keys, Fthis_single_command_raw_keys)
-       (Fclear_this_command_keys): Doc fixes.
+       * xdisp.c: Comment fixes. Use renamed symbols.
 
-       * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
-       (update_face_from_frame_parameter): Increment face_change_count
-       and windows_or_buffers_changed to force redisplay using changed faces.
+       * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
 
-       * xdisp.c (QCpropertize): New variable.
-       (mode_line_proptrans_alist): New variable.
-       (display_mode_element): New arg PROPS; all calls changed.
-       Implement this, for strings.
-       Handle literal output of strings by sharing the
-       main-line code for strings, using local var `literal'.
-       Handle :propertize feature.
-       (syms_of_xdisp): Initialze and staticpro QCpropertize and
-       mode_line_proptrans_alist.
+       * xfns.c: Use renamed symbols.
 
-2002-02-11  Kim F. Storm  <storm@cua.dk>
+       * xterm.c: Comment fixes. Use renamed symbols.
+       (fringe_bitmap_type): Renamed from bitmap_type.
+       (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
+       (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
+       (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
 
-       * window.c: (Vmode_line_in_non_selected_windows): New variable.
-       (syms_of_window): DEFVAR_LISP it.
+       * xterm.h: Comment fixes. Use renamed symbols.
+       (fringes_extra): Renamed from flags_areas_extra.
+       (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
+       (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
+       (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
+       (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
+       (FRAME_X_LEFT_FRINGE_WIDTH):
+       Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
+       (FRAME_X_RIGHT_FRINGE_WIDTH):
+       Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
 
-       * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
-       (CURRENT_MODE_LINE_FACE_ID): Use it.
-       (Vmode_line_in_non_selected_windows): Declare extern.
+2001-11-15  Jason Rumney  <jasonr@gnu.org>
 
-       * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
-       to get mode line face.
+       * w32menu.c (add-menu-item): Make help_echo and radio buttons
+       work for most menu items.  From David Ponce
+       <david.ponce@wanadoo.fr>.
 
-2002-02-11  Eli Zaretskii  <eliz@is.elta.co.il>
+2001-11-15  Gerd Moellmann  <gerd@gnu.org>
 
-       * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
-       variables; cus-start.el doesn't need them anymore.
+       * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
+       Some x_set_* function expect to be called even if old and new
+       value are equal.
 
-2002-02-09  Kim F. Storm  <storm@cua.dk>
+       * xdisp.c (build_desired_tool_bar_string): Accept zero
+       tool_bar_button_relief.
 
-       * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
-       reduction.  This fixes a display problem where stray newlines were
-       inserted in the window (corrected by C-l).  Clarified code (IMHO).
+       * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
 
-2002-02-09  Eli Zaretskii  <eliz@is.elta.co.il>
+       * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
 
-       * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
+       * xterm.c (x_draw_bar_cursor): If the background color of the
+       glyph under the cursor equals the frame's cursor color, use
+       the glyph's foreground color for drawing the bar cursor.
 
-       * xdisp.c (display_mode_lines): Fix last change.
+       * dispnew.c (direct_output_forward_char): Fix character/byte
+       position comparison.
 
-2002-02-09  Jason Rumney  <jasonr@gnu.org>
+2001-11-15  Miles Bader  <miles@gnu.org>
 
-       * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
-       match each other.
-       (w32_load_system_font): Prevent Cleartype fonts from loading.
-       (Fx_show_tip): Ensure tip frames are above other topmost windows.
+       * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
+       (Fdelete_field, Ffield_string, Ffield_string_no_properties):
+       Update arguments to find_field.
+       (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
+       (Fconstrain_to_field): Use LIMIT arg to shorten search time.
+       * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
+       * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
 
-2002-02-09  Kim F. Storm  <storm@cua.dk>
+2001-11-14  Richard M. Stallman  <rms@gnu.org>
+
+       * editfns.c (Fpropertize): Allow call with 1 arg.
 
-       * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
-       (CURRENT_MODE_LINE_HEIGHT): Use it.
-       (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
+       * dispextern.h (image_background, image_background_transparent):
+       Conditionalize on HAVE_X_WINDOWS.
 
-       * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
-       (pos_visible_p, handle_face_prop): Likewise.
-       (display_mode_lines): Likewise, but for the real selected window.
-       (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
+2001-11-13  Richard M. Stallman  <rms@gnu.org>
 
-       * xfaces.c (Qmode_line_inactive): New face variable for mode-line
-       in non-selected windows.
-       (realize_basic_faces): Realize it.
-       (syms_of_term): Intern and staticpro it.
+       * print.c (Fprin1_to_string): Doc fix.
 
-2002-02-08  Kim F. Storm  <storm@cua.dk>
+       * sunfns.c (Fsun_change_cursor_icon): Doc fix.
 
-       * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
-       Changed mail addresses to emacs-devel@gnu.org.
+       * floatfns.c (Fceiling, Ffloor): Doc fixes.
 
-2002-02-08  Eli Zaretskii  <eliz@is.elta.co.il>
+       * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
 
-       * fileio.c (Fsubstitute_in_file_name): If the file name includes
-       ~user, and there's no such user, don't discard everything before ~user.
+       * fileio.c (Ffile_accessible_directory_p): Doc fix.
 
-       * floatfns.c (Fround): Doc fix.
+       * eval.c (syms_of_eval): Doc fix.
 
-2002-02-08  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+       * coding.c (syms_of_coding): Doc fix.
 
-       * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
+       * doc.c (Fsnarf_documentation): Doc fix.
 
-2002-02-07  Stefan Monnier  <monnier@cs.yale.edu>
+       * dispnew.c (syms_of_display): Doc fix.
 
-       * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
+       * category.c (Fget_unused_category): Doc fix.
 
-2002-02-07  Kim F. Storm  <storm@cua.dk>
+       * buffer.c (syms_of_buffer): Doc fixes.
 
-       * keymap.c (where_is_internal): Only check whether definition is
-       remapped if it fulfills is_command_symbol.
+2001-11-14  Eli Zaretskii  <eliz@is.elta.co.il>
 
-2002-02-07  Andreas Schwab  <schwab@suse.de>
+       * print.c (prin1, print): Doc fix.
 
-       * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
+2001-11-14  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-       * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
+       * fontset.h: Remove declarations of variables
+       `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
 
-2002-02-06  Kim F. Storm  <storm@cua.dk>
+       * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
+       `Vclip_large_size_font'.
 
-       * keymap.c (Fdefine_key): Allow symbol as KEY argument for
-       defining command remapping.  Doc updated.
-       (Flookup_key): Remap command through keymap if KEY is a symbol.
-       (is_command_symbol): New function.
-       (Fkey_binding): Use it.  New optional argument NO-REMAP.
-       Doc updated.  Callers changed.  Perform command remapping via
-       recursive call unless that arg is non-nil.
-       (where_is_internal): New argument no_remap.  Callers changed.
-       Call recursively to find original key bindings for a remapped
-       comand unless that arg is non-nil.
-       (Fwhere_is_internal): New optional argument NO-REMAP.
-       Doc updated.  Callers changed.  Pass arg to where_is_internal.
+2001-11-13  Jason Rumney  <jasonr@gnu.org>
 
-       * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
-       (is_command_symbol): Added prototype.
+       * w32fns.c: Doc fix.
 
-       * keyboard.c (Vthis_original_command): New variable.
-       (syms_of_keyboard): DEFVAR_LISP it.
-       (command_loop_1): Set it, and perform command remapping.
+2001-11-13  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-2002-02-06  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+       * xfaces.c (Fface_attributes_as_vector): Doc fix.
 
-       * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
+       * fns.c: Doc fix.
 
-2002-02-06  Jason Rumney  <jasonr@gnu.org>
+       * emacs.c: Doc fix.
 
-       * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
+       * coding.c: Doc fix.
 
-2002-02-06  Eli Zaretskii  <eliz@is.elta.co.il>
+       * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
+       * fontset.c, insdel.c, keymap.c: Change doc-string comments to
+       `new style' [w/`doc:' keyword].
 
-       * charset.c (get_charset_id): Use if-else instead of ?:.
+2001-11-12  Richard M. Stallman  <rms@gnu.org>
 
-2002-02-06  Richard M. Stallman  <rms@gnu.org>
+       * xterm.c (XTread_socket): Don't update focus for EnterNotify or
+       LeaveNotify events.  Only FocusIn and FocusOut do that now.
+       (x_display_and_set_cursor): Do display hollow cursors in active
+       minibuffer windows when they are not selected.
 
-       * filelock.c (S_ISLNK): Define if not defined.
+2001-11-12  Jason Rumney  <jasonr@gnu.org>
 
-2002-02-03  Richard M. Stallman  <rms@gnu.org>
+       * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
+       * w32term.c: Change doc-string comments to `new style'.
+       [w/`doc:' keyword]. Doc fixes.
 
-       * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
+       * w32fns.c: Don't define max.
+       (Fx_open_connection): Only execute once.
 
-       * lread.c (read1): Redesign strategy for force_multibyte and
-       force_singlebyte.  Now is_multibyte records whether read_buffer
-       is multibyte.  Encountering any multibyte character makes it so.
+2001-11-12  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-2002-02-02  Stefan Monnier  <monnier@cs.yale.edu>
+       * ccl.c: Change macros to use do-while block instead of if-else.
+       Use braces to follow GNU Coding Standards.
 
-       * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
-       with the same sequence, map that sequence to f10 rather than f0.
+2001-11-11  Richard M. Stallman  <rms@gnu.org>
 
-2002-02-03  Andreas Schwab  <schwab@suse.de>
+       * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
 
-       * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
-       latter never being defined on GNU/Linux.
+       * lread.c (read_escape): Use end_of_file_error for reporting eof.
 
-2002-02-02  Eli Zaretskii  <eliz@is.elta.co.il>
+       * insdel.c (replace_range): Use adjust_markers_for_replace
+       instead of adjust_markers_for_delete and adjust_markers_for_insert.
 
-       * xfaces.c (realize_default_face): Don't set the weight and slant of
-       the default face to Qnormal, unless these attributes are unspecified.
+       * intervals.h: Declare set_text_properties and set_text_properties_1.
 
-2002-02-02  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+       * textprop.c (set_text_properties_1): New subroutine
+       broken out of set_text_properties.
+       (set_text_properties): Use set_text_properties_1.
 
-       * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
-       Call cancel_hourglass unconditionally.
+       * intervals.c (graft_intervals_into_buffer):
+       Use set_text_properties_1 to clear out properties.
 
-       * eval.c (Fsignal): Remove duplicated declaration of
-       the variable `display_hourglass_p'.
+       * search.c (Freplace_match): Use replace_range to insert
+       and delete.  Don't request property inheritance from
+       surrounding text.
 
-2002-01-31  Richard M. Stallman  <rms@gnu.org>
+2001-11-10  Jason Rumney  <jasonr@gnu.org>
 
-       * editfns.c (region_limit): Nicer error message.
+       * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
+       vertical fonts. Allow them if face name is explicitly specified.
+       Do not give up if we find a font that cannot be converted to an xlfd.
 
-       * coding.c (decode_composition_emacs_mule):
-       Give up if NCOMPONENT gets too large to index `component'.
+2001-11-10  Gerd Moellmann  <gerd@gnu.org>
 
-       * callint.c (check_mark): New arg to specify clearer error message.
-       Callers changed.
+       * unexelf.c (unexec): Use mmap/munmap to allocate buffers
+       instead of malloc/free.
 
-2002-01-27  Richard M. Stallman  <rms@gnu.org>
+2001-11-09  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-       * minibuf.c (Fcompleting_read): Doc fix.
+       * xfaces.c (merge_face_vectors): Use braces to follow GNU
+       Coding Standards.
+       (Finternal_set_lisp_face_attribute): Likewise.
 
-2002-01-27  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+       * buffer.c (Fbury_buffer): Likewise.
 
-       * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
-       (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
-       Fix doc-strings.
+       * indent.c (current_column_1): Remove unused variable `prev_col'.
 
-2002-01-26  Richard M. Stallman  <rms@gnu.org>
+       * coding.c (encode_coding): Use precomputed value of `src'.
+       (encode_coding): Remove unused variable `src_end'.
+       (code_convert_region): Remove unused variables `count'.
 
-       * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
+2001-11-07  Jason Rumney  <jasonr@gnu.org>
 
-       * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
-       and scroll_up_aggressively.
+       * w32term.c (x_display_and_set_cursor): Do not move system caret
+       if cursor_glyph is NULL.
 
-2002-01-26  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+2001-11-07  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-       * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
+       * keymap.c (access_keymap): Fix compilation error.
 
-2002-01-25  Stefan Monnier  <monnier@cs.yale.edu>
+2001-11-07  Miles Bader  <miles@gnu.org>
 
-       * textprop.c (Fnext_property_change, Fnext_single_property_change)
-       (Fprevious_property_change, Fprevious_single_property_change):
-       Stay within the narrowed-buffer boundaries.
+       * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
 
-2002-01-25  Eli Zaretskii  <eliz@is.elta.co.il>
+2001-11-07  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-       * term.c (Ftty_display_color_cells): New function.
-       (syms_of_term): Defsubr it.
-       (Ftty_display_color_cells, Ftty_display_color_p): Change the
-       argument name to DISPLAY.  Doc fix.
+       * intervals.c (graft_intervals_into_buffer):
+       Remove #ifdef'd-out code.
+       (graft_intervals_into_buffer): Remove unused variable `middle'.
 
-       * dispextern.h: Add prototype for set_tty_color_mode and
-       tty_setup_colors.
+       * lread.c (Feval_region): Remove obsolete #ifdef'd-out
+       code (eval-current-buffer).
+       Change doc-string comments to `new style' [w/`doc:' keyword].
 
-2002-01-24  Jason Rumney  <jasonr@gnu.org>
+2001-11-06  Richard M. Stallman  <rms@gnu.org>
 
-       * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
-       If region left to draw is not what was expected, mark the frame as
-       garbaged.
+       * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
 
-       * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
-       Combine the regions returned by BeginPaint and GetUpdateRect.
+2001-11-06  Stefan Monnier  <monnier@cs.yale.edu>
 
-2002-01-23  Jason Rumney  <jasonr@gnu.org>
+       * lread.c (read1): Fix behavior with nested backquoting.
 
-       * w32term.c (x_update_window_begin): Only hide caret if
-       w32_use_visible_system_caret is set.
-       (x_update_window_end): Only show caret if
-       w32_use_visible_system_caret is set.
-       (syms_of_w32term): Handle SystemParametersInfo call failing.
+       * keyboard.c (make_lispy_event): Check integerness and fix
+       Lisp_Object/int mixup.
 
-       * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
+2001-11-06  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-2002-01-22  Richard M. Stallman  <rms@gnu.org>
+       * fns.c (copy_hash_table): Remove unused variable `v'.
 
-       * unexelf.c (unexec): Define n so as to cause compilation error
-       for the code where people have often written n instead of nn.
+       * fontset.c (fontset_font_pattern): Remove unused variable
+       `family_registry'.
 
-       * .gdbinit (hookpost-run): Defined.
+       * indent.c (current_column_1): Remove unused variable `prev_col'.
 
-2002-01-22  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+2001-11-05  Richard M. Stallman  <rms@gnu.org>
 
-       * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
+       * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
 
-2002-01-21  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+       * buffer.c (Fkill_buffer): Don't delete auto save file
+       if buffer is modified.
 
-       * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
-       if fullscreen is being set.
+2001-11-05  Andrew Innes  <andrewi@gnu.org>
 
-2002-01-21  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+       * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
+       CHECK_NUMBER_CDR.
 
-       * minibuf.c (Fminibuffer_contents)
-       (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
-       (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
+2001-11-05  Richard M. Stallman  <rms@gnu.org>
 
-2002-01-21  Richard M. Stallman  <rms@gnu.org>
+       * unexelf.c (unexec): Minor changes; clean up comments.
 
-       * window.c (check_frame_size): Fix minimum height calculation.
+2001-11-05  Sam Steingold  <sds@gnu.org>
 
-2002-01-20  Ken Raeburn  <raeburn@gnu.org>
+       * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
 
-       * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
-       height before comparison.
-       (WINDOW_WANTS_HEADER_LINE_P): Likewise.
+2001-11-05  Andreas Schwab  <schwab@suse.de>
 
-2002-01-20  Jason Rumney  <jasonr@gnu.org>
+       * sound.c (sound_perror): Save errno from being clobbered.
 
-       * w32term.c (w32_system_caret_width): Remove.
-       (w32_use_visible_system_caret): New user flag.
-       (syms_of_w32term): DEFVAR_BOOL it.  Initialize based on whether
-       Windows reports a screen reader running.
-       (x_update_window_begin): Hide the system caret.
-       (x_update_window_end): Show the system caret.
-       (x_display_and_set_cursor): Don't draw a cursor when
-       w32_use_visible_system_caret is set.  Do not adjust width.
+2001-11-05  Dale Hagglund  <rdh@yottayotta.com>
 
-       * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
-       (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
-       <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
-       the user requests it.  Use system default width when creating.
-       <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
+       * unexelf.c (unexec): Don't use `mmap'.  Instead, read and write
+       the program image directly.
 
-       * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
-       New window messages.
+2001-11-05  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-2002-01-20  Richard M. Stallman  <rms@gnu.org>
+       * buffer.h (Fbuffer_local_value): Add prototype.
 
-       * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
+2001-11-04  Richard M. Stallman  <rms@gnu.org>
 
-2002-01-20  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+       * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
+       and CHECK_BUFFER.
 
-       * doprnt.c (doprnt1): Fix typos in error call.
+       * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
+       (record_char): Likewise.
 
-2002-01-20  Eli Zaretskii  <eliz@is.elta.co.il>
+       * keyboard.c (make_lispy_event): Don't insist a drag event must
+       move to a different buffer position.  Instead, check for moving at
+       least double_click_fuzz.
 
-       * unexelf.c (unexec) [__sgi]: Support the .got sections.
+       * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
 
-2002-01-20  Jason Rumney  <jasonr@gnu.org>
+       * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
 
-       * w32term.c (w32_native_per_char_metric): Don't trust the metrics
-       that Windows returns.  If a double check fails, try to guess how
-       ExtTextOut is going to act.
+       * indent.c (current_column_1, Fmove_to_column): Separate the code
+       for display-table glyphs from the code for buffer text, to fix
+       bugs in the former.
 
-       * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
-       in place of stricmp.
-       (w32_list_synthesized_fonts): Removed.
-       (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
-       (struct enumfont_t): New element; list.
-       (enum_font_cb2): List all style and charset variations of a font.
-       (Fw32_select_font): New optional argument; include_proportional.
-       Exclude vertical fonts.  Exclude proportional fonts unless
-       include_proportional is non-nil.
-       (w32_enable_synthesized_fonts): Change to a boolean.
-       (Fw32_send_sys_command): Doc fix.
+2001-11-04  Michael Welsh Duggan  <md5i@cs.cmu.edu>
 
-2002-01-19  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+       * buffer.c (Fbuffer_local_value): New function.
+       (syms_of_buffer): Defsubr it.
 
-       * dispnew.c (update_frame): Move the variable `tem' to the block
-       where it is used.
+       * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
+       value of `cursor-in-non-selected-windows'.
 
-2002-01-19  Jason Rumney  <jasonr@gnu.org>
+       * lisp.h (Qcursor_in_non_selected_windows): New declaration.
+       * xdisp.c (Qcursor_in_non_selected_windows): New variable.
+       (syms_of_xdisp): Initialize it.
 
-       * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
-       call to face-set-after-frame-default.
+2001-11-04  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-2002-01-18  Richard M. Stallman  <rms@gnu.org>
+       * xfns.c (Fx_create_frame): Doc fix.
 
-       * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
-       (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
+       * coding.c: Change doc-string comments to `new style' [w/`doc:'
+       keyword].
 
-2002-01-17  Richard M. Stallman  <rms@gnu.org>
+       * eval.c (top_level_value, top_level_set): Remove commented and
+       #ifdef'd-out code.
+       (Fdefvar): Fix usage in doc-string.
 
-       * window.c (enlarge_window): When exceeding size of parent,
-       directly delete all the siblings instead of trying to resize it.
+2001-11-03  Richard M. Stallman  <rms@gnu.org>
 
-2002-01-17  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+       * xfns.c: Include unistd.h, if it exists.
 
-       * term.c (set_tty_color_mode): Remove unused variable `tem'.
+       * editfns.c: Move the include of ctype.h after unistd.h.
 
-2002-01-16  Henrik Enberg  <henrik@enberg.org>
+       * gmalloc.c: Test BROKEN_PROTOTYPES.
 
-       * lread.c (init_lread): Move the installed-lisp dirs later in the path.
+2001-11-03  Ken Raeburn  <raeburn@gnu.org>
 
-2002-01-16  Kim F. Storm  <storm@cua.dk>
+       * lisp.h (CHECK_STRING_CAR): New macro.
+       * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
+       treating XCAR and XCDR as lvalues.
+       (openp): Use CHECK_STRING_CAR.
+       (read_list): Use XSETCDR instead of treating XCDR as lvalue.
 
-       * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
-       is invisible.  This can happen if cursor is on top line of a
-       window, and we switch to a buffer with a header line.
+2001-11-03  Eli Zaretskii  <eliz@is.elta.co.il>
 
-       * w32term.c (x_erase_phys_cursor): Ditto.
+       * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
+       (SIGMASKTYPE): Define.
 
-2002-01-16  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+       * syssignal.h (sigunblock): Don't define if already defined.
 
-       * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
-       `dont_resize' only when used.
+2001-11-02  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-       * xdisp.c: Remove forgotten extern declaration of `Qimage'.
+       * eval.c (debugger_may_continue, Vdebug_ignored_errors)
+       (call_debugger, Fcondition_case, skip_debugger, unbind_to):
+       Fix typos in comments.
 
-2002-01-15  Eli Zaretskii  <eliz@is.elta.co.il>
+       * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
+       and #ifdef'd-out code.
+       Fix and reindent comments.
 
-       * xdisp.c (display_mode_element): When computing charpos, depend
-       on multibyteness of elt, not the text in field.
+       * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
 
-2002-01-15  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+       * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
+       argument `i' in macros.
 
-       * buffer.c (Fkill_all_local_variables):
-       Increment `update_mode_lines' only once.
+       * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
+       `i' in macros.
 
-2002-01-14  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
+       * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
+       (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
+       (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
+       (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
+       (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
+       (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
+       (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
+       (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
+       in macros.
 
-       * lisp.h (adjust_after_replace_noundo)
-       (Fupdate_coding_systems_internal): Add prototypes.
+       * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
+       * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
+       * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
+       * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
+       * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
+       * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
+       * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
+       * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
+       * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
+       (remove unused second argument).
 
-       * sound.c (Fplay_sound): Initialize header_size also for :data case.
+2001-11-02  Stefan Monnier  <monnier@cs.yale.edu>
 
-2002-01-14  Eli Zaretskii  <eliz@is.elta.co.il>
+       * syntax.c (describe_syntax): New wrapper.
+       (Finternal_describe_syntax_value): Rename from describe_syntax.
+       Don't insert space at front and \n at the end.
+       (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
 
-       Support for the --color command-line argument and tty-color-mode
-       frame parameter:
+       * regex.c (re_wctype): Try to fix some warnings.
+       (regcomp, regexec): Don't forget the __restrict.
 
-       * term.c (tty_default_color_capabilities, tty_setup_colors)
-       (set_tty_color_mode): New functions.
-       (term_init): Call tty_default_color_capabilities.
-       (Qtty_color_mode_alist): New variable.
-       (syms_of_term): Intern and staticpro it.
+2001-11-02  Richard M. Stallman  <rms@gnu.org>
 
-       * frame.c (store_frame_param): Call set_tty_color_mode for termcap
-       frames.
-       (do_switch_frame): For termcap frames, switch the tty
-       color mode as specified by the frame's parameters.
-       (Qtty_color_mode): New variable.
-       (syms_of_frame): Intern and staticpro it.
+       * textprop.c (Fget_char_property): Doc fix.
 
-       * emacs.c (USAGE2): Add the --color option.
-       (standard_args): Ditto.
+2001-11-02  Pavel Jan\e,Am\e(Bk  <Pavel@Janik.cz>
 
-2002-01-13  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+       * process.c (Fstart_process): Add usage to doc-string.
 
-       * xterm.h (struct x_output): New members want_fullscreen,
-       x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
-       y_pixels_outer_diff.
-       New enum for FULLSCREEN_* constants.
-       (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
-       is NULL.
-       (x_fullscreen_adjust): Add prototype.
+       * data.c (Fsetq_default): Ditto.
 
-       * emacs.c (USAGE2): Add the new full-screen arguments.
-       (standard_args): Ditto.
+       * callint.c (Finteractive): Ditto.
 
-       * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
-       New variables.
-       (syms_of_xfns): Intern and staticpro them.
-       (x_frame_parms) <"fullscreen">: New parameter.
-       (x_fullscreen_move, x_set_fullscreen): New functions.
-       (x_set_frame_parameters): Support for Qfullscreen.
-       (x_real_positions): More accurate computation of the frame position.
-       (x_figure_window_size): Support full-screen frames.
-       (Fx_create_frame): Default the fullscreen parameter.
+2001-11-01  Stefan Monnier  <monnier@cs.yale.edu>
 
-       * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
-       (XTread_socket) <Expose>: Call x_check_fullscreen.
-       <ConfigureNotify>: Don't resize to fullscreen.
-       Call x_check_fullscreen_move, and set the want_fullscreen member of
-       output_data.x.
+       * macros.c: Don't include keymap.h any more.
 
-2002-01-13  Jason Rumney  <jasonr@gnu.org>
+2001-11-01  Richard M. Stallman  <rms@gnu.org>
 
-       * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
-       for mice with more than 3 buttons.
+       * data.c (Fmake_local_variable): Doc fix.
 
-       * w32term.c (parse_button): New parameter xbutton.  Callers changed.
-       (w32_read_socket): Handle new "XBUTTON" messages.
+       * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
+       (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
 
-       * w32fns.
+       * keymap.c (Fdescribe_buffer_bindings): Print character property
        bindings along with or instead of the buffer local map.
        Make the overriding maps override what they should.