+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.
(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.
+ (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.
+ * 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.
+ (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.
+ here.
2001-09-25 Gerd Moellmann <gerd@gnu.org>
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.
+ 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>.
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.
+ * 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>