+2001-10-09 Gerd Moellmann <gerd@gnu.org>
+
+ * regex.c (WIDE_CHAR_SUPPORT): Do not use defined() in macro.
+ From Hallvard B Furuseth <h.b.furuseth@usit.uio.no>.
+
+ * editfns.c (Fcurrent_time_zone): Cast isalnum() argument to
+ unsigned char.
+ From Hallvard B Furuseth <h.b.furuseth@usit.uio.no>.
+
+2001-10-08 Andrew Innes <andrewi@gnu.org>
+
+ * lisp.h [max]: Undef min and max before redefining them.
+
+ * w32gui.h: Do not undef min and max.
+
+ * w32heap.h: Do not undef min and max.
+
+ * s/ms-w32.h: Do not undef min and max.
+
+2001-10-08 Stefan Monnier <monnier@cs.yale.edu>
+
+ * xdisp.c (handle_fontified_prop): Don't bind after-change-functions.
+
+2001-10-08 Sam Steingold <sds@gnu.org>
+
+ * keymap.c (current-active-maps): Quote newlines (compilation error).
+
+2001-10-08 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * Makefile.in (lisp, shortlisp): Replace bindings.el with
+ bindings.elc, since otherwise doc strings in bindings.el get wrong
+ offsets in etc/DOC.
+
+2001-10-08 Stefan Monnier <monnier@cs.yale.edu>
+
+ * lisp.h: Remove the entries for keymap.c (moved to keymap.h).
+
+ * keyboard.h (map_prompt): Remove.
+
+ * xterm.c, w32term.c, term.c, minibuf.c, keymap.c,
+ * intervals.c, fns.c, doc.c, callint.c: Include keymap.h.
+
+ * xmenu.c (keymap_panes, Fx_popup_menu): Use Fkeymap_prompt.
+
+ * w32menu.c (keymap_panes, Fx_popup_menu): Use Fkeymap_prompt.
+
+ * keyboard.c (map_prompt): Remove.
+ (read_char_x_menu_prompt, read_char_minibuf_menu_prompt):
+ Use Fkeymap_prompt.
+
+ * keymap.h: New file. Extracted from lisp.h.
+
+ * keymap.c (Fkeymap_prompt, Fcurrent_active_maps): New funs.
+ (accessible_keymaps_1): New function.
+ (Faccessible_keymaps, accessible_keymaps_char_table): Use it.
+ (Fwhere_is_internal): Use Fcurrent_active_maps.
+ (Fdescribe_buffer_bindings): Renamed from describe_buffer_bindings.
+ Insert in current buffer rather than standard-output.
+ Don't call `help-mode'. Export to elisp.
+ (describe_buffer_bindings): New wrapper.
+ (syms_of_keymap): Defsubr Skeymap_prompt, Scurrent_active_maps
+ and Sdescribe_buffer_bindings.
+
+2001-10-08 Gerd Moellmann <gerd@gnu.org>
+
+ * atimer.c (alarm_signal_handler) [USG && !POSIX_SIGNALS]:
+ Remove code setting signal handler.
+
+ * sysdep.c (child_setup_tty) [HAVE_TERMIO || HAVE_TERMIOS]:
+ Clear ICRNL and INLCR. From Daiki Ueno <ueno@unixuser.org>.
+
+2001-10-08 Pavel Jan\e,Bm\e(Bk <Pavel@Janik.cz>
+
+ * keyboard.c: Don't define min/max.
+
+2001-10-08 Gerd Moellmann <gerd@gnu.org>
+
+ * xterm.c, xmenu.c, xfns.c, xdisp.c, window.c:
+ * w32term.c, w32menu.c, w32console.c, w32bdf.c, w32.c, term.c
+ * sysdep.c, sound.c, search.c, scroll.c, minibuf.c, keymap.c
+ * intervals.c, insdel.c, indent.c, fns.c, fileio.c, editfns.c
+ * dispnew.c, dired.c, charset.c, xfaces.c, alloc.c, atimer.c:
+ Don't define min/max.
+
+ * lisp.h (min, max): New macros.
+
+ * puresize.h (BASE_PURESIZE): Increase to 725000.
+
+2001-10-08 Pavel Jan\e,Bm\e(Bk <Pavel@Janik.cz>
+
+ * xfaces.c (free_frame_menubar): Add prototype.
+
+ * lisp.h (init_window): Add prototype.
+
+ * editfns.c: Include ctype.h.
+
+ * xterm.c: USE_LUCID can be defined iff USE_X_TOOLKIT is defined.
+ (xm_scroll_callback) [USE_MOTIF]: Remove unused variable `percent'.
+ (x_set_toolkit_scroll_bar_thumb) [USE_MOTIF]: Remove unused
+ variable `sb'.
+
+ * xfns.c (Fx_hide_tip): Fix typo in a doc string.
+ (Fx_file_dialog) [USE_MOTIF]: Remove unused variables
+ `popup_activated_flag' and `title'.
+
+ * doc.c (Fdocumentation_property): Fix typo in a doc string.
+
+ * emacs.c (main): Remove extra `;'.
+
+ * atimer.h (struct atimer): Fix typos in a comment.
+
+ * atimer.c: Fix typo.
+
+ * Makefile.in: Fix typo.
+
+ * README: Remove obsolete part mentioning removed VMS file.
+
+2001-10-07 Miles Bader <miles@gnu.org>
+
+ * Makefile.in (lisp, shortlisp): Add `button.elc'.
+
+2001-10-07 Ken Raeburn <raeburn@gnu.org>
+
+ * minibuf.c (Fminibuffer_prompt_end): Don't apply make_number to a
+ Lisp_Object.
+
+ * lisp.h (Ffield_end): Declare.
+
+2001-10-07 Gerd Moellmann <gerd@gnu.org>
+
+ * keyboard.c (parse_modifiers, apply_modifiers): Use VALMASK.
+
+ * insdel.c (make_gap): Use MOST_POSITIVE_FIXNUM.
+
+ * floatfns.c (FLOAT_TO_INT2, FLOAT_TO_INT): Use FIXNUM_OVERFLOW_P.
+
+ * dired.c (Ffile_attributes): Use FIXNUM_OVERFLOW_P.
+
+ * bytecode.c (syms_of_bytecode) [BYTE_CODE_METER]: Doc fix.
+ (METER_CODE, Fbyte_code): Use MOST_POSITIVE_FIXNUM.
+
+ * alloc.c (inhibit_garbage_collection): Simplify.
+ (Fmemory_use_counts): Ditto.
+
+ * data.c (most_positive_fixnum, most_negative_fixnum): New variables.
+ (syms_of_data): DEFVAR_INT most-positive-fixnum and
+ most-negative-fixnum.
+
+ * lisp.h (MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM)
+ (FIXNUM_OVERFLOW_P): New macros.
+
+2001-10-06 Miles Bader <miles@gnu.org>
+
+ * xterm.h (struct x_output): Add scroll_bar_top_shadow_pixel and
+ scroll_bar_bottom_shadow_pixel fields.
+ * xterm.c (x_create_toolkit_scroll_bar): Try to allocate colors
+ for the shadows, and tell the toolkit about them if we succeed.
+ (x_destroy_window) [USE_TOOLKIT_SCROLL_BARS]:
+ Free scroll-bar shadow colors.
+ * xfns.c (x_set_scroll_bar_background) [USE_TOOLKIT_SCROLL_BARS]:
+ Free scroll-bar shadow colors when the background color changes.
+ (Fx_create_frame, x_create_tip_frame) [USE_TOOLKIT_SCROLL_BARS]:
+ Initialize scroll-bar shadow-color fields.
+
+2001-10-05 Gerd Moellmann <gerd@gnu.org>
+
+ * fileio.c (Fcopy_file): If NEWNAME is a directory copy FILE there.
+
+2001-10-05 Miles Bader <miles@gnu.org>
+
+ * minibuf.c (Fminibuffer_prompt_end, Fminibuffer_contents)
+ (Fminibuffer_contents_no_properties, Fdelete_minibuffer_contents):
+ New functions (were in simple.el).
+ (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
+ (read_minibuf, do_completion, Fminibuffer_completion_help): Use them.
+ (syms_of_minibuf): Initialize them.
+
+2001-10-05 Gerd Moellmann <gerd@gnu.org>
+
+ * xfns.c (tiff_error_handler, tiff_warning_handler): New functions.
+ (tiff_load): Install them as error and warning handler.
+
+2001-10-04 Andrew Innes <andrewi@gnu.org>
+
+ * w32fns.c (x_to_w32_color): Fix argument to alloca.
+ (w32_load_system_font): Don't believe what GetLanguageFontInfo
+ says; query codepage info directly to determine if font is double byte.
+ (x_to_w32_charset): Handle private format for unknown charsets.
+ Handle wildcards in charset spec, by ignoring them.
+ (w32_codepage_for_font): Fix argument to alloca. Don't remove
+ "*-" prefix from charset.
+ (x_to_w32_font): Enlarge remainder array for safety. Specifically
+ handle the truncated font spec form constructed by font_list_1, so
+ that we correctly identify the charset fields. Don't remove "*-"
+ prefix from charset.
+ (w32_list_synthesized_fonts): Fix argument to alloca.
+
+2001-10-04 Stefan Monnier <monnier@cs.yale.edu>
+
+ * window.h (MINI_WINDOW_P): Use NILP.
+
+ * coding.h (ENCODE_SYSTEM, DECODE_SYSTEM): Define also for non-NT.
+
+ * termhooks.h (struct input_event): Use proper type for `kind'.
+
+2001-10-04 Gerd Moellmann <gerd@gnu.org>
+
+ This handles unknown keysyms better than before. For example,
+ after `xmodmap -e 'keysym F5 = ccaron' in a Latin-1 environment,
+ Emacs formerly completely ignored F5. With the change, it derives
+ a key symbol from the name of the X keysym, `ccaron' in this case.
+ Reported by Martin Buchholz.
+
+ * xterm.c (XTread_socket): Return a non_ascii_keystroke for
+ unknown keysyms.
+
+ * keyboard.c (make_lispy_event) [HAVE_X_WINDOWS]: If we know
+ that EVENT->code isn't a function key, use the keysym's name.
+
+2001-10-04 Gerd Moellmann <gerd@gnu.org>
+
+ FOREACH is a macro that should make it easier to loop over Lisp
+ lists with checks for cycles and proper lists.
+
+ * lisp.h (LIST_END_P, FOREACH): New macros.
+
+2001-10-04 Gerd Moellmann <gerd@gnu.org>
+
+ On some systems, XtCloseDisplay seems to cause a SIGSEGV when
+ called for a lost connection. Prevent dumping core in this case.
+ Instead print the X error, and exit. On user request.
+
+ * xterm.c (error_msg): New variable.
+ (x_fatal_error_signal): New function.
+ (x_connection_closed): Set error_msg. Install x_fatal_error_signal
+ as fatal_error_signal_hook around the call to XtCloseDisplay.
+
+ * emacs.c (fatal_error_signal_hook): New variable.
+ (fatal_error_signal): Call that function.
+
+2001-10-04 Gerd Moellmann <gerd@gnu.org>
+
+ With this, Emacs prints how much pure storage it will
+ approximately need in case pure storage overflows while dumping.
+
+ * alloc.c (purebeg, pure_size, pure_bytes_used_before_overflow):
+ New variables.
+ (init_alloc_once): Initialize new variables.
+ (PURE_POINTER_P): Use new variables.
+ (pure_alloc): If pure storage overflows, allocate from the heap.
+ (check_pure_size): New function.
+ (Fgarbage_collect): Don't GC if pure storage has overflowed.
+
+ * lisp.h (pure_size) [HAVE_SHM]: Declare extern size_t.
+ (check_pure_size): Add prototype.
+
+ * emacs.c (Fdump_emacs_data, Fdump_emacs): Call check_pure_size.
+
+2001-10-04 Gerd Moellmann <gerd@gnu.org>
+
+ This adds a post-gc-hook that's run with GC inhibited.
+ Requested by Francois Pinard. XEmacs has it. Added to NEWS.
+
+ * alloc.c (Vpost_gc_hook, Qpost_gc_hook): New variables.
+ (syms_of_alloc): DEFVAR_LISP post-gc-hook, initialize Qpost_gc_hook.
+ (Fgarbage_collect): Run post-gc-hook.
+
+2001-10-04 Gerd Moellmann <gerd@gnu.org>
+
+ This adds `defvaralias' and `indirect-variable'. Changes not
+ directly related to this feature are there to gain the same
+ performance again as before variable aliases.
+
+ You must use the SYMBOL_VALUE and SET_SYMBOL_VALUE macros in C
+ code to get and set symbol values, to take defvaralias into account.
+
+ (Note: the new `constant' bit-flag in symbols would make it
+ possible to define arbitrary read-only variables, e.g. with
+ `defconst'.)
+
+ Documentation is in lispref/variables.texi. Added to NEWS.
+
+ * lisp.h (enum symbol_interned): New enumeration.
+ (struct Lisp_Symbol): Remove member `obarray', add
+ `indirect_variable', `constant', and `interned'.
+ (SYMBOL_INTERNED_P, SYMBOL_INTERNED_IN_INITIAL_OBARRAY_P)
+ (SYMBOL_CONSTANT_P, SYMBOL_VALUE, SET_SYMBOL_VALUE): New macros.
+ (indirect_variable): Add prototype.
+
+ * print.c (print_preprocess, print_object): Test internedness of
+ symbols differently.
+
+ * lread.c (Fintern, Funintern): Set symbol's interned and constant
+ bit-fields.
+ (init_obarray): Likewise for t and nil.
+
+ * eval.c Use SYMBOL_VALUE/SET_SYMBOL_VALUE.
+ (Fdefvaralias): New function.
+ (specbind): Simplify the test if symbol is a constant.
+ (syms_of_eval): Defsubr Fdefvaralias.
+
+ * data.c: Use SYMBOL_VALUE/SET_SYMBOL_VALUE.
+ (Qcyclic_variable_indirection): New variable.
+ (Fkeywordp): Check for internedness differently.
+ (Fmakunbound): Simplify the test if symbol is a constant.
+ (indirect_variable, Findirect_variable): New functions.
+ (swap_in_symval_forwarding): If SYMBOL is an alias, use the
+ aliased symbol.
+ (let_shadows_buffer_binding_p): Check for variable aliases.
+ (set_internal): Simplify the test if SYMBOL is a constant.
+ If SYMBOL has a buffer-local value and is an alias, use the aliased
+ symbol instead.
+ (syms_of_data): Initialize Qcyclic_variable_indirection and defsubr
+ Sindirect_variable.
+
+ * bytecode.c (Fbyte_code) <varref>: Use SYMBOL_VALUE.
+ (Fbyte_code) <varset>: Simplify the test if symbol's value can be
+ set directly.
+
+ * alloc.c (Fmake_symbol): Adapt to changes of struct Lisp_Symbol.
+
+ * abbrev.c, buffer.c, coding.c, fns.c, frame.c, keyboard.c:
+ * minibuf.c, sunfns.c, w16select.c: Use SYMBOL_VALUE/
+ SET_SYMBOL_VALUE macros instead of accessing symbol values directly.
+
+2001-10-03 Miles Bader <miles@gnu.org>
+
+ * callproc.c (syms_of_callproc): Explicitly state in the
+ documentation for `process-environment' that earlier entries take
+ precedence over later ones.
+
+2001-10-02 Miles Bader <miles@gnu.org>
+
+ * textprop.c (Fnext_char_property_change)
+ (Fprevious_char_property_change): Remove reference to non-existant
+ argument OBJECT from doc-string.
+
+2001-10-01 Gerd Moellmann <gerd@gnu.org>
+
+ * xdisp.c (display_line): Set row's ends_in_newline_from_string_p.
+ (try_window_id): Skip back over lines ending in a newline from a
+ string.
+
+ * dispextern.h (struct glyph_row) <ends_in_newline_from_string_p>:
+ New bit flag
+
+2001-10-01 Richard M. Stallman <rms@gnu.org>
+
+ * search.c (Freplace_match): Doc fix.
+
+2001-09-28 Andrew Innes <andrewi@gnu.org>
+
+ * w32menu.c (set_frame_menubar): Take into account that
+ f->menu_bar_vector can be nil, and not a vector. From Ken Raeburn
+ <raeburn@gnu.org>.
+
+2001-09-30 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * frame.c (syms_of_frame) <default-minibuffer-frame>: Doc fix.
+
+2001-09-28 Pavel Jan\e,Bm\e(Bk <Pavel@Janik.cz>
+
+ * s/gnu-linux.h: Fix a typo in comment.
+
+2001-09-28 Andreas Schwab <schwab@suse.de>
+
+ * s/gnu-linux.h (LD_SWITCH_SYSTEM_TEMACS): Link temacs with -z
+ nocombreloc, in case -z combreloc is the default.
+
+2001-09-28 Gerd Moellmann <gerd@gnu.org>
+
+ * m/macppc.h [DATA_SEG_BITS]: Put in #if 0 until we know what's
+ really going on here.
+
+2001-09-27 Stefan Monnier <monnier@cs.yale.edu>
+
+ * search.c (trivial_regexp_p): Catch \{N,M\} as well.
+
+2001-09-27 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * Makefile.in (shortlisp): Resync with loadup.el: add backquote,
+ utf-8, menu-bar, and latin-N.
+ (SOME_MACHINE_LISP): Remove menu-bar, since it's loaded
+ unconditionally now.
+ (lisp): Add latin-N, since they are preloaded.
+
+2001-09-27 Gerd Moellmann <gerd@gnu.org>
+
+ * xterm.c (x_draw_relief_rect): Draw bottom relief 1 pixel more
+ to the left. Some cleanup.
+
+ * xdisp.c (display_mode_element): One more case where a string's
+ multibyteness should be used for display.
+
+2001-09-26 Gerd Moellmann <gerd@gnu.org>
+
+ * fileio.c (Finsert_file_contents): If REPLACE is non-nil, stop
+ reading at EOF.
+
+ * xdisp.c (with_echo_area_buffer): Use echo_kboard instead
+ of the only temporarily set echoing flag for deciding when
+ the cancel echoing.
+
+ * keyboard.c (echo_kboard): Make externally visible.
+
+ * lisp.h (echo_kboard): Declare extern.
+
+ * xdisp.c (make_cursor_line_fully_visible): Return 0 and set
+ fonts_changed_p if we need larger matrices due to vscrolling.
+ (try_scrolling, try_cursor_movement, redisplay_window): Give up on
+ this round of redisplay if make_cursor_line_fully_visible fails.
+ (CURSOR_MOVEMENT_*, SCROLLING_*): New enumerators.
+ (try_cursor_movement, try_scrolling): Use them instead of integers.
+
+ * dispextern.h (required_matrix_width, required_matrix_height):
+ Add prototypes.
+
+ * dispnew.c (required_matrix_width, required_matrix_height):
+ New functions.
+ (allocate_matrices_for_window_redisplay)
+ (allocate_matrices_for_frame_redisplay: Use them.
+ Remove parameters CH_DIM.
+
+ * xdisp.c (display_mode_lines): Temporarily set selected_frame
+ and selected_window to the frame of the window whose mode-lines
+ are displayed, and to the window itself.
+ (redisplay_window, redisplay_mode_lines): Don't set selected_frame
+ here.
+
+2001-09-25 Gerd Moellmann <gerd@gnu.org>
+
+ * xfns.c (x_kill_gs_process): Recognize if someone has cleared
+ the image cache under us.
+
+ * xdisp.c (display_mode_element): If the mode element is a symbol
+ with a string value, use that string's multibyteness for displaying.
+
+ * keyboard.c (read_char): Don't clear a message for a switch-frame
+ event. From Stefan Monnier <monnier@cs.yale.edu>.
+
+ * xterm.c (fast_find_position) [0]: Add a presumably more correct
+ version for after 21.1.
+
+ * xdisp.c (row_containing_pos): Make externally visible.
+
+ * dispextern.h (row_containing_pos): Add prototype.
+
+ * process.c (send_process): Disable composition if from_byte < 0.
+ From Kenichi Handa <handa@etl.go.jp>.
+
+2001-09-24 Gerd Moellmann <gerd@gnu.org>
+
+ * xterm.c (refreshicon): Function removed.
+
+ * Makefile.in (xterm.o): Remove references to sink.h and sinkmask.h.
+
+ * sink11.h, sink11mask.h, sink.h, sinkmask.h: Removed.
+
+ * xterm.c (toplevel): Remove includes in #if 0.
+
+ * process.c (sigchld_handler) [LINUX]: Don't return from
+ the signal handler at the end of the loop.
+
+2001-09-21 Gerd Moellmann <gerd@gnu.org>
+
+ * sysdep.c (wait_for_termination) [POSIX_SIGNALS]:
+ Terminate only if kill returns -1, and errno is ESRCH.
+
+2001-09-21 Markus Rost <rost@math.ohio-state.edu>
+
+ * Makefile.in (shortlisp): Add ../lisp/env.elc.
+
+2001-09-20 Gerd Moellmann <gerd@gnu.org>
+
+ * process.c (sigchld_handler): Use GC_CONSP, GC_INTEGERP, GC_EQ
+ since this function can be called during GC.
+
+ * callproc.c (Fcall_process): Handle errors from pipe(2).
+ (child_setup): Delete code in #ifdef vipc.
+
+2001-09-19 Gerd Moellmann <gerd@gnu.org>
+
+ * xdisp.c (decode_mode_spec): Add parameter MULTIBYTE.
+ (display_mode_element): Display the string from decode_mode_spec
+ depending on its multibyteness.
+
+ * s/netbsd.h (LD_SWITCH_SYSTEM, C_SWITCH_SYSTEM): Add /usr/pkg.
+
+ * m/macppc.h (DATA_SEG_BITS): Also define for GCC 3.
+
+2001-09-18 Gerd Moellmann <gerd@gnu.org>
+
+ * keyboard.c (Frecursive_edit): Pass (BUFFER . SINGLE-KBOARD) to
+ recursive_edit_unwind.
+ (recursive_edit_unwind): Set kboard state according to
+ SINGLE-KBOARD.
+
+ * buffer.c (modify_overlay): Don't do nothing if START == END;
+ This can still be a modification, for example when an overlay has
+ a before-string or after-string.
+ (Fdelete_overlay): Prevent redisplay optimizations when deleting
+ an overlay with before-string or after-string.
+
+ * s/netbsd.h (C_SWITCH_SYSTEM): Add.
+ (LD_SWITCH_SYSTEM): Include /usr/local/lib.
+
+ * xdisp.c (try_window_id) [!GLYPH_DEBUG]: Give up if
+ first_unchanged_at_end_row is in front of
+ last_unchanged_at_beg_row. This code should be removed after the
+ release of 21.1.
+
+2001-09-17 Gerd Moellmann <gerd@gnu.org>
+
+ * buffer.h (BUF_COMPUTE_UNCHANGED): Use BUF_MODIFF and
+ BUF_OVERLAY_MODIFF instead of MODIFF and OVERLAY_MODIFF.
+
+ * m/macppc.h (DATA_SEG_BITS) [__linux__]: Define for GCC
+ versions >= 2.95.
+
+2001-09-14 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * dired.c (Ffile_attributes): Doc fix.
+
+2001-09-14 Gerd Moellmann <gerd@gnu.org>
+
+ * fileio.c (Ffile_symlink_p): Fix last change.
+
+ * filelock.c (current_lock_owner): Fix last change.
+
+2001-09-13 Gerd Moellmann <gerd@gnu.org>
+
+ * filelock.c (current_lock_owner): If readlink returns ERANGE,
+ take that to mean that the buffer is too small.
+
+ * fileio.c (Ffile_symlink_p): If readlink returns ERANGE, take
+ that to mean that the buffer is too small.
+
+ * xdisp.c (reseat_1): Set IT's multibyte_p flag according to the
+ current buffer's multibyteness when discarding the iterator's
+ stack.
+
+ * xfns.c (Fx_window_property): Handle case that property gets
+ deleted between the two calls to XGetWindowProperty.
+
2001-09-11 Gerd Moellmann <gerd@gnu.org>
+ * minibuf.c (read_minibuf_unwind): Bind inhibit-modification-hooks.
+
* minibuf.c (read_minibuf): Bind inhibit-modification-hooks to t,
in addition to read-only.
;; Local Variables:
;; coding: iso-2022-7bit
;; End:
+
+ Copyright (C) 2001 Free Software Foundation, Inc.
+ Copying and distribution of this file, with or without modification,
+ are permitted provided the copyright notice and this notice are preserved.