XEmacs 21.2.45 "Thelxepeia".
[chise/xemacs-chise.git.1] / src / ChangeLog
index 2864924..1a6d69c 100644 (file)
@@ -1,9 +1,985 @@
+2001-02-23  Martin Buchholz <martin@xemacs.org>
+
+       * XEmacs 21.2.45 "Thelxepeia" is released.
+
+2001-02-21  Martin Buchholz  <martin@xemacs.org>
+
+       * lisp-union.h (XSETINT): 
+       (XSETCHAR):
+       (XSETOBJ): 
+       Reverse previous change of 2001-02-06.
+
+2001-02-20  Matt Tucker  <tuck@whistlingfish.net>
+
+       Fix `VALID_BYTIND_P' crashes in regex.c when using narrowed
+       buffers.
+       * syntax.h (SYNTAX_CACHE_BYTE_TO_CHAR):
+       * syntax.h (SYNTAX_CACHE_OBJECT_BYTE_TO_CHAR):
+       Add `BI_BUF_BEGV' to bytepos before calculating bufpos.
+       * regex.c (POS_AS_IN_BUFFER): removed
+       * regex.c (re_search_2):
+       * regex.c (re_match_2):
+       Don't use an offset of 1 when calculating buffer positions, since
+       `BI_BUF_BEGV' does it already.
+
+2001-02-18  Wim Dumon  <wim@easics.be>
+
+       * insdel.c (prepare_to_modify_buffer): Also check for
+       supersession when clash-detection is enabled. 
+
+2001-02-17  Matt Tucker  <tuck@whistlingfish.net>
+
+       * regex.c (re_match_2_internal):
+       Convert temp characters from 'const unsigned char' to 're_char'.
+       Fix crashing bug with extended characters under mule.
+       * syntax.c (Qsyntax_table): Moved from vars_of_syntax to
+       syms_of_syntax. Use defsymbol to define. Fixes hanging bug with
+       font-lock, pdump, and new syntax-table code.
+       * syntax.c (find_start_of_comment):
+       (find_end_of_comment):
+       (forward-comment):
+       Fix crashing bugs involving moving beyond end of buffer.
+       * syntax.c (find_start_of_comment):
+       Fixed logic to allow proper detection of cases where the same
+       character is used to end both a two-char comment start and a
+       two-char comment end sequence. Fixes `(forward-comment -1)'.
+       * syntax.c (find_start_of_comment):
+       Return position just past last comment-end character for all cases
+       (previously was only done for two-char comment-end sequences).
+       * syntax.c (forward-comment):
+       Take value returned from `find_end_of_comment', rather than
+       incrementing it.
+       * syntax.h (SYNTAX_CACHE_BYTE_TO_CHAR):
+       Properly deal with BUFFERP (syntax_cache.object)
+
+2001-02-17  Martin Buchholz  <martin@xemacs.org>
+
+       * alloc.c (Fgarbage_collect): 
+       * alloc.c (make_bit_vector_from_byte_vector):
+       -Wsign-compare-correctness.
+
+2001-02-16  Martin Buchholz  <martin@xemacs.org>
+
+       * lisp-union.h (XSETINT): Eliminate unnecessary temp var.
+       (XSETCHAR): Likewise.
+       (XSETOBJ): Likewise.
+
+2001-02-15  Martin Buchholz  <martin@xemacs.org>
+
+       * mule-canna.c (canna-func-delete_previous): 
+       Rename to canna-func-delete-previous.
+
+2001-02-14  Martin Buchholz  <martin@xemacs.org>
+
+       * mule-ccl.c (ccl_driver): Warning suppression.  Use countof.
+
+2001-02-13  Matt Tucker  <tuck@whistlingfish.net>
+
+       * font-lock.c (find_context): Fix C++ compile errors introduced by
+       recent patch
+
+2001-02-13  Martin Buchholz  <martin@xemacs.org>
+
+       * s/aix4.h: Later versions of IBM C compiler need a bug workaround
+       pragma, but earlier ones barf on the same pragma.
+
+2001-02-06  Mike Sperber <mike@xemacs.org>
+
+       * emacs.c (complex_vars_of_emacs): Add `mule-lisp-directory' and
+       `configure-mule-lisp-directory'.
+
+2001-02-12  Martin Buchholz  <martin@xemacs.org>
+
+       Make sure dump-id.c is compiled in the same way as other .c's.
+       Fixes pdump compilation failure with HP's cc, which defaults to K&R.
+       * dump-id.h: Remove.
+       * emacs.c: Move dump-id.h into dumper.h.
+       * dumper.h: Move dump-id.h into dumper.h.
+       * Makefile.in.in:
+       Use standard .c.o rule for building dump-id.o.
+       Remove preprocessor flags from link command.
+       Add dump-id.o to ${otherobjs} if PDUMP.
+
+2001-02-07  Matt Tucker  <tuck@whistlingfish.net>
+
+       Port FSF 20.7 syntax table improvements.
+       * syntax.c.
+       * syntax.h.
+
+       Fixups for new syntax table stuff.
+       * dired.c: Include syntax.c.
+       (Fdirectory_files): Initialize regex_match_object and
+       regex_emacs_buffer.
+       * extents.h: EXFUN Fnext_extent_change, Fprevious_extent_change,
+       and Fget_char_property.
+
+       Use ported FSF 20.7 syntax table improvements.
+       * font-lock.c.
+       * regex.c.
+       * search.c.
+       
+2001-02-09  Martin Buchholz  <martin@xemacs.org>
+
+       * regex.c (Boolean): Renamed to `re_bool', to avoid conflict with
+       Unixware's enum boolean from sys/types.h.
+
+2001-02-10  Martin Buchholz  <martin@xemacs.org>
+
+       Fix support for building with latest Purify.
+       * Makefile.in.in (PURIFY_LIBS): Remove thread flags.
+       (PURIFY_FLAGS): Likewise.
+
+2001-02-09  Martin Buchholz  <martin@xemacs.org>
+
+       * fileio.c (lisp_string_set_file_times): New.
+       * fileio.c (Fcopy_file): Use it.
+       Fixes bug:
+       (copy-file filename non-ascii-filename t t)
+       ==> No such file or directory, non-ascii-filename
+
+2001-02-10  Martin Buchholz  <martin@xemacs.org>
+
+       * glyphs-x.c (generate_cursor_fg_bg): Avoid a warning.
+       USHRT_MAX seems clearer than ~0 anyways.
+
+2001-02-09  Martin Buchholz  <martin@xemacs.org>
+
+       dumper improvements.  Inspired by Olivier.
+       * dumper.c (pdump_max_align): New.
+       * dumper.c (pdump_add_entry): Use pdump_max_align.
+       * dumper.c (pdump_get_entry_list): Likewise.
+       * dumper.c (pdump_scan_by_alignment): Likewise.
+       Don't iterate through unnecessary alignments.
+       * dumper.c (pdump_file_get): No need to align result of malloc().
+       * dumper.c (pdump_mallocadr): Remove.  
+       The result of malloc() is guaranteed to be maximally aligned.
+       * dumper.c: s/elmt/elt/g;
+       * dumper.c (pdump_object_table): Allocate dynamically, not statically.
+       * dumper.c (pdump_alert_undump_object): Likewise.
+       * dumper.c (pdump_align_table): 
+       Don't support alignments > 64.
+       Store ALIGNOF's, not shift counts, in table.
+
+2001-02-09  Martin Buchholz  <martin@xemacs.org>
+
+       * s/mingw32.h (HAVE_STRUCT_UTIMBUF): Remove.
+       * s/windowsnt.h (HAVE_STRUCT_UTIMBUF): Remove.
+       * systime.h: Use HAVE_UTIME.
+       * sysdep.c (struct utimbuf): Remove.
+       * sysdep.c (set_file_times): Prefer utime() to utimes().
+       * config.h.in (HAVE_UTIME): New.
+       * config.h.in (HAVE_UTIME_H): Remove.
+       * config.h.in (HAVE_STRUCT_UTIMBUF): Remove.
+
+2001-02-09  Martin Buchholz  <martin@xemacs.org>
+
+       * s/aix4.h: Hide #pragmas inside #ifndef NOT_C_CODE.
+
+2001-02-08  Martin Buchholz  <martin@xemacs.org>
+
+       * s/irix6-0.h: Use the standard system memmove, not bcopy.
+
+2001-02-08  Martin Buchholz <martin@xemacs.org>
+
+       * XEmacs 21.2.44 "Thalia" is released.
+
+2001-02-06  Martin Buchholz  <martin@xemacs.org>
+
+       Fixes crashes in kill-emacs on some systems.
+       * process-unix.c (unix_kill_child_process):
+       It's OK for kill() to fail with ESRCH.
+
+2001-02-07  Martin Buchholz  <martin@xemacs.org>
+
+       Contortions to make .gdbinit tricks work on most systems.
+       * alloc.c (dbg_inhibit_dbg_symbol_deletion): Keep debugger info.
+       * alloc.c (dbg_valmask): Make non-const.
+       * alloc.c (dbg_typemask): Make non-const.
+       * alloc.c (dbg_USE_UNION_TYPE): Make non-const.
+       * alloc.c (dbg_valbits): Make non-const.
+       * alloc.c (dbg_gctypebits): Make non-const.
+       * .gdbinit (decode_object): Make it work with AIX cc.
+
+2001-02-06  Martin Buchholz  <martin@xemacs.org>
+
+       * elhash.c (make_general_lisp_hash_table):
+       Use simpler and more efficient calloc to clear entries.
+
+2001-02-07  Martin Buchholz  <martin@xemacs.org>
+
+       * window.c (window_scroll): Work around an AIX C compiler bug.
+       Fixes 'scroll-up' does nothing problem with xlC.
+
+2001-02-05  Martin Buchholz  <martin@xemacs.org>
+
+       * .gdbinit: Remove obsolete comment.
+
+2001-01-31  Mike Alexander  <mta@arbortext.com>
+
+       * select.c (Fown_selection_internal): Set owned_p for device
+       method correctly.
+
+2001-02-01  Martin Buchholz  <martin@xemacs.org>
+
+       Port to g++ 2.97.
+       "not" cannot be used as a macro name as it is an operator in C++
+       * config.h.in: Stop #defining `not'.
+       * chartab.c (check_category_char): not ==> not_p
+       * chartab.h: Likewise.
+       * regex.c (re_match_2_internal): Likewise.
+
+2001-02-02  Martin Buchholz  <martin@xemacs.org>
+
+       * lisp-disunion.h: Fix up comments.
+
+2001-01-31  Martin Buchholz  <martin@xemacs.org>
+
+       * keymap.c (define_key_check_and_coerce_keysym):
+       (syms_of_keymap):
+       Support mouse-6 and mouse-7 bindings in the obvious way.
+
+2001-02-01  Martin Buchholz  <martin@xemacs.org>
+
+       * m/hp9000s300.h (UNEXEC): Check for HPUX, not !BSD.
+
+2001-01-30  Martin Buchholz  <martin@xemacs.org>
+
+       Previous patch changing DEFVAR_INT to use EMACS_INT was incomplete.
+       Previous patch missed DEFVAR_INT_MAGIC.
+       Make sure future DEFVAR_foo use correct types.
+       * symeval.h (DEFVAR_SYMVAL_FWD_FIXNUM): New.
+       * (DEFVAR_SYMVAL_FWD_INT): Add type checking.
+       * (DEFVAR_SYMVAL_FWD_OBJECT): Add type checking.
+       * (DEFVAR_INT_MAGIC): Use DEFVAR_SYMVAL_FWD_FIXNUM.
+       * (DEFVAR_INT): Likewise.
+       * redisplay.c (vertical_clip): Should be of type Fixnum.
+       * redisplay.c (horizontal_clip): Likewise.
+       * lisp.h (dump_add_opaque_int): New.
+       (dump_add_opaque_fixnum): New.
+
+2001-01-29  Andy Piper  <andy@xemacs.org>
+
+       * glyphs-widget.c (check_valid_int_or_function): allow symbols
+       since they can be eval'ed
+
+2001-01-29  Martin Buchholz  <martin@xemacs.org>
+
+       * lisp.h (ALIGNOF): Make it work on non-gcc C++ compilers.
+       Oops, XEmacs redefines `class'.  Use `typename' instead.
+
+2001-01-28  Martin Buchholz  <martin@xemacs.org>
+
+       * dumper.c: Fix C++ compile errors.
+
+2001-01-29  Martin Buchholz  <martin@xemacs.org>
+
+       * tparam.c: Use correct prototypes.
+
+2001-01-28  Martin Buchholz  <martin@xemacs.org>
+
+       * sysproc.h: #include util.h for NetBSD's openpty.
+
+2001-01-27  Martin Buchholz  <martin@xemacs.org>
+
+       More 64-bit correctness.
+       The C value of a DEFVAR_INT should be of type EMACS_INT, not int.
+       Use a typedef `fixnum' for the type used for DEFVAR_INT.
+       Fix up comments.
+       This finally finishes the 64-bit SGI port.
+       Fixes things like (let ((gc-cons-threshold most-positive-fixnum)) ...).
+       * symbols.c: Fix up comments and type casts.
+       * symbols.c (do_symval_forwarding): s/int/Fixnum/g
+       * symbols.c (store_symval_forwarding): s/int/Fixnum/g
+       * symeval.h (Fixnum): New type.
+       * symeval.h (symbol_value_type): Fix up comment.
+
+       * commands.h:
+       * nt.c:
+       * emacs.c:
+       * data.c:
+       * redisplay.c:
+       * abbrev.c:
+       * dired-msw.c:
+       * event-Xt.c:
+       * eldap.c:
+       * window.c:
+       * sound.c:
+       * event-stream.c:
+       * eval.c:
+       * buffer.c:
+       * mule-canna.c: A million DEFVAR_INTs here...
+       * mule-canna.c (count_char): s/int */Fixnum */g in arglist.
+       * extents.c:
+       * cmdloop.c:
+       * lisp.h:
+       * select-x.c:
+       * console-x.h:
+       * event-msw.c:
+       * mule-wnnfns.c:
+       * hpplay.c:
+       * ralloc.c:
+       * alloc.c:
+       * keymap.c:
+       * profile.c:
+       s/int/Fixnum/g in DEFVAR_INT declarations.
+
+2001-01-26  Martin Buchholz  <martin@xemacs.org>
+
+       Port pdump to SGI alignment-sensitive environment.
+       Lisp Object sizeof methods now return aligned sizes.  Rely on that.
+       Eliminate is_lrecord since Lisp_Objects sizeof methods are now all
+       properly aligned.
+       Define and use aligned reading and writing macros.
+       Use buffered stdio instead of posix i/o for faster dumping.
+       Eliminate kludgy 256 byte space for header.
+       Read and write from dump file using structs for alignment safety.
+       * dumper.c (pdump_align_stream): New.
+       * dumper.c (PDUMP_ALIGN_OUTPUT): New.
+       * dumper.c (PDUMP_READ_ALIGNED): New.
+       * dumper.c (PDUMP_WRITE_ALIGNED): New.
+       * dumper.c (pdump_static_Lisp_Object): New struct.
+       * dumper.c (pdump_static_pointer): New struct.
+       * dumper.c (pdump_entry_list_element): Remove is_lrecord member.
+       * dumper.c (pdump_add_entry): Remove is_lrecord parameter.
+       * dumper.c (pdump_dump_data): Rely on sizeof method alignment.
+       * dumper.c (pdump_allocate_offset): Rely on sizeof method alignment.
+
+       * dumper.c (pdump_backtrace):
+       * dumper.c (pdump_get_indirect_count):
+       * dumper.c (pdump_register_object):
+       * dumper.c (pdump_register_struct):
+       * dumper.c (pdump_reloc_one):
+       * dumper.c (pdump_scan_by_alignment):
+       * dumper.c (pdump_dump_from_root_struct_ptrs):
+       * dumper.c (pdump_dump_opaques):
+       * dumper.c (pdump_dump_rtables):
+       * dumper.c (pdump_dump_from_root_objects):
+       * dumper.c (pdump):
+       * dumper.c (pdump_load_finish):
+       Use aligned reading and writing.
+
+       * dumper.c (pdump_free): Make static.
+       * dumper.c (pdump_hFile): Likewise.
+       * dumper.c (pdump_hMap): Likewise.
+
+2001-01-26  Martin Buchholz <martin@xemacs.org>
+
+       * XEmacs 21.2.43 "Terspichore" is released.
+
+2001-01-25  Martin Buchholz  <martin@xemacs.org>
+
+       Type fiddling for window_config.saved_windows_count
+       * window.c (struct window_config): 
+       Make saved_windows_count member unsigned.
+       * window.c (sizeof_window_config_for_n_windows): 
+       Make parameter unsigned.
+       * window.c (mark_window_config):
+       * window.c (window_config_equal):
+       * window.c (free_window_configuration):
+       * window.c (Fset_window_configuration):
+       * window.c (count_windows):
+       * window.c (Fcurrent_window_configuration):
+       * window.c (reinit_vars_of_window):
+       Update all callers and users.
+
+2001-01-25  Martin Buchholz  <martin@xemacs.org>
+
+       Alignment correctness for flexible arrays.
+       * lisp.h (FLEXIBLE_ARRAY_STRUCT_SIZEOF):
+       Make alignment-correct. Add interesting comments.
+       * alloc.c (size_vector):
+       * alloc.c (make_vector_internal):
+       * alloc.c (make_bit_vector_internal):
+       * alloc.c (sweep_bit_vectors_1):
+       * fns.c (size_bit_vector):
+       Update all callers of FLEXIBLE_ARRAY_STRUCT_SIZEOF to add new arg.
+       * window.c (sizeof_window_config_for_n_windows): 
+       Use FLEXIBLE_ARRAY_STRUCT_SIZEOF.
+
+2001-01-24  Martin Buchholz  <martin@xemacs.org>
+
+       * lread.c (read1): Rename `fexp', which is #defined in SGI's math.h
+
+2001-01-23  Andy Piper  <andy@xemacs.org>
+
+       * select.c (Fown_selection_internal): pass owned_p
+
+       * select-msw.c (mswindows_own_selection): New Signature.
+
+       * console.h (struct console_methods): add owned_p to
+       _own_selection.
+
+       * select-x.c (x_own_selection): pass owned_p
+       (hack_motif_clipboard_selection): use owned_p
+       (vars_of_select_x): new variable -
+       x_selection_strict_motif_ownership.
+
+2001-01-23  Martin Buchholz  <martin@xemacs.org>
+
+       * specifier.h (specifier_data_offset): Remove pointless parens.
+       * glyphs.h (IMAGE_SPECIFIER_DATA): Likewise.
+
+2001-01-24  Martin Buchholz  <martin@xemacs.org>
+
+       Make Lisp_Object sizeof methods be alignment-correct.
+       pdump must restore objects to the same alignment as the C compiler
+       assumes.  It really matters on SGIs.
+       * lstream.c (aligned_sizeof_lstream): New.
+       (sizeof_lstream): Use aligned_sizeof_lstream.
+       (Lstream_new): Likewise.
+       * opaque.c (aligned_sizeof_opaque): New.
+       (sizeof_opaque): Use aligned_sizeof_opaque.
+       (make_opaque): Likewise.
+       * specifier.c (aligned_sizeof_specifier): New.
+       (sizeof_specifier): Use aligned_sizeof_specifier.
+       (make_specifier_internal): Likewise.
+
+2001-01-23  Martin Buchholz  <martin@xemacs.org>
+
+       * lstream.h (struct lstream): Use max_align_t for trailing data.
+       * specifier.h (struct Lisp_Specifier): Likewise.
+
+2001-01-22  Martin Buchholz  <martin@xemacs.org>
+
+       * mule-ccl.c (CCL_Extension): Renamed from CCL_Extention.
+       (CCL_SUCCESS): Kludge to prevent Sun cc compiler warnings.
+       (CCL_SUSPEND): Likewise.
+       (CCL_INVALID_CMD): Likewise.
+       (CCL_CALL_FOR_MAP_INSTRUCTION): Likewise.
+       (ccl_driver): Likewise.
+       (CCL_WRITE_CHAR): Macro hygiene.
+       (CCL_WRITE_STRING): Macro hygiene.
+
+2001-01-22  Martin Buchholz  <martin@xemacs.org>
+
+       Port "portable" dumper to SunOS 4 and HP-UX.
+       * s/aix4.h (AIX4): Move MAP_FAILED definition elsewhere.
+       * emacs.c (main): PDUMP implies no RUN_TIME_REMAP.
+       * dumper.c (pdump_file_get): Define MAP_FAILED if not already defined.
+
+2001-01-22  Martin Buchholz  <martin@xemacs.org>
+
+       * lisp.h (ALIGNOF): A better definition for C++.
+
+2001-01-20  Martin Buchholz  <martin@xemacs.org>
+
+       Macro hygiene.
+       Fix printf warnings: int format, long int arg.
+       * regex.c (DECLARE_DESTINATION): Use DECLARE_NOTHING.
+       (PUSH_FAILURE_POINT): Use correct printf formats.
+       (POP_FAILURE_POINT): Use correct printf formats.  
+       Use do {...} while (0)
+
+2001-01-20  Martin Buchholz <martin@xemacs.org>
+
+       * XEmacs 21.2.42 "Poseidon" is released.
+
+2001-01-20  Martin Buchholz  <martin@xemacs.org>
+
+       * console-x.h: typo fix du jour.  Remove #if 0'ed code.
+
+2001-01-19  Martin Buchholz  <martin@xemacs.org>
+
+       De-kludgify FIXED_TYPE free list frobbing.
+       Fix crashes on 64-bit platforms introduced by my patch of 2001-01-13.
+       * alloc.c (DECLARE_FIXED_TYPE_ALLOC): Use Lisp_Free.
+       * alloc.c (ALLOCATE_FIXED_TYPE_1): Use new definitions.
+       * alloc.c (Lisp_Free): New pseudo lisp object definition.
+       * alloc.c (LRECORD_FREE_P): New.
+       * alloc.c (MARK_LRECORD_AS_FREE): New.
+       * alloc.c (MARK_LRECORD_AS_NOT_FREE): New.
+       * alloc.c (STRUCT_FREE_P): Deleted.
+       * alloc.c (MARK_STRUCT_AS_FREE): Deleted.
+       * alloc.c (MARK_STRUCT_AS_NOT_FREE): Deleted.
+       * alloc.c (STRING_CHARS_FREE_P): New.
+       * alloc.c (MARK_STRING_CHARS_AS_FREE): New.
+       * alloc.c (PUT_FIXED_TYPE_ON_FREE_LIST): Use new definitions.
+       * alloc.c (FREE_FIXED_TYPE): Use new definitions.
+       * alloc.c (STRING_CHARS_FREE_P): Use new definitions.
+       * alloc.c (resize_string): Use new definitions.
+       * alloc.c (SWEEP_FIXED_TYPE_BLOCK): Use new definitions.
+       * alloc.c (verify_string_chars_integrity): Use new definitions.
+       * alloc.c (compact_string_chars): Use new definitions.
+       * alloc.c: Update monster comments.
+       * lrecord.h (lrecord_type): Add some new lrecord types for
+       alloc.c's use.
+
+2001-01-18  Martin Buchholz  <martin@xemacs.org>
+
+       Improve alignment hackery.
+       * lisp.h (ALIGNOF): Better definition for the non-gcc case.
+       (max_align_t): Moved from opaque.h - general purpose.
+       (ALIGN_PTR): Use size_t, not long.
+       * opaque.h (max_align_t): Move to lisp.h.
+
+2001-01-18  Norbert Koch  <nk@LF.net>
+
+       * gui.h: Fix and add prototypes to fix build problems.
+
+2001-01-18  Martin Buchholz  <martin@xemacs.org>
+
+       temacs is going away, so `dump-temacs' is now a bad name.
+       * .dbxrc (dump-temacs): Rename to `dmp'.
+       * .gdbinit (dump-temacs): Rename to `dmp'.
+
+2001-01-17  Andy Piper  <andy@xemacs.org>
+
+       * glyphs.c (print_image_instance): comment to make martin happy.
+
+       * glyphs-x.c (x_redisplay_widget): update faces after a frame
+       change.
+
+       * glyphs-msw.c (mswindows_redisplay_widget): add code to cope with
+       activation.
+       (mswindows_tab_control_redisplay): warning suppression.
+
+       * glyphs-widget.c (widget_update): re-write to cope with updated
+       items.
+       (widget_instantiate): use new gui_item functions.
+       (tab_control_update): deleted.
+       (progress_gauge_update): deleted.
+       (image_instantiator_progress_guage): take out update reference.
+       (image_instantiator_tree_view): ditto.
+       (image_instantiator_tab_control): ditto.
+
+       * gui.c (widget_gui_parse_item_keywords): new function. Do things
+       Right the new way.
+       (gui_item_add_keyval_pair): re-write to cope with descriptors and
+       return whether anything was changed.
+       (update_gui_item_keywords): as it sounds.
+
+       * gui.h: declare widget_gui_parse_item_keywords.
+
+       * fns.c (safe_copy_tree): new function taken from Fcopy_tree.
+       (Fcopy_tree): use it. Stops infloop death in bogus instantiators.
+
+2001-01-17  Martin Buchholz <martin@xemacs.org>
+
+       * XEmacs 21.2.41 "Polyhymnia" is released.
+
+2001-01-16  Didier Verna  <didier@xemacs.org>
+
+       * glyphs.c (image_instantiate): don't use fallbacks when
+       instantiating a face's background pixmap by inheritance.
+
+2001-01-14  Mike Sperber <mike@xemacs.org>
+
+       * sysdep.c (start_of_data): PDUMP implies ORDINARY_LINK.
+       Conditionalize accordingly.
+
+2001-01-16  Martin Buchholz  <martin@xemacs.org>
+
+       * dumper.c (pdump_file_get): Fix a compiler warning.
+
+2001-01-15  Martin Buchholz  <martin@xemacs.org>
+
+       Make Purify happy when pdumping.
+       * symbols.c (Fmake_variable_buffer_local): Make Purify happy, by
+       iniitalizing all bits of new lisp object memory.
+       * symbols.c (Fmake_local_variable): Likewise.
+       * symbols.c (Fdontusethis_set_symbol_value_handler): Likewise.
+       * symbols.c (Fdefvaralias): Likewise.
+       * mule-charset.c (vars_of_mule_charset): Likewise.
+
+2001-01-15  Martin Buchholz  <martin@xemacs.org>
+       Add the `-nd' flag when running pre-dump operations under the debugger.
+       * .dbxrc (run-temacs): Add `-nd'.
+       * .dbxrc (update-elc): Likewise.
+       * .dbxrc (dump-temacs): Likewise.
+       * .gdbinit (run-temacs): Likewise.
+       * .gdbinit (check-temacs): Likewise.
+       * .gdbinit (update-elc): Likewise.
+       * .gdbinit (dump-temacs): Likewise.
+
+2001-01-14  Martin Buchholz  <martin@xemacs.org>
+
+       Allow building 64-bit executables on AIX with GNU malloc, e.g.
+       export OBJECT_MODE=64
+       configure --pdump --use-union-type=no
+       * m/ibmrs6000.h (DATA_START): Define for 64-bit world.
+       * gmalloc.c (__default_morecore): Remove pre-ANSI cruft.
+
+       * miscplay.c (sndcnv8U_2mono):
+       Avoid two uses of `++' in the same expression.
+       Suppresses a GCC warning.
+
+2001-01-13  Martin Buchholz  <martin@xemacs.org>
+
+       Make sure future compilers don't miscompile alloc.c.
+       * alloc.c:
+       (MARK_STRUCT_AS_FREE): Make aliasing-optimization-resistant.
+       (MARK_STRUCT_AS_NOT_FREE): Make aliasing-optimization-resistant.
+
+2001-01-12  Martin Buchholz  <martin@xemacs.org>
+
+       * dumper.c: A little post-pdump-rename comment fixup.
+
+2001-01-09  Jerry James  <james@eecs.ku.edu>
+
+       * lisp-disunion.h: Change LISP_TO_CVOID arg to match its use.
+
+2001-01-13  Martin Buchholz  <martin@xemacs.org>
+
+       * *.[ch]: Globally rename symbols using the following `pdump-rename'
+       script:
+       #!/bin/sh
+       replace_symbol () {
+         (findn texi$; findn [ch]$) | xargs g -lw "$1" | xargs global-replace 's/(?<!_)\b'$1'\b(?!_)/'$2'/g'
+       }
+
+       replace_symbol pdump_wire_lists pdump_weak_object_chains
+       replace_symbol pdump_wire_list dump_add_weak_object_chain
+
+       replace_symbol pdump_wires pdump_root_objects
+       replace_symbol pdump_wire dump_add_root_object
+
+       replace_symbol pdump_dump_wired pdump_dump_from_root_objects
+       replace_symbol pdump_dump_structs pdump_dump_from_root_struct_ptrs
+
+       replace_symbol dumpstructinfos pdump_root_struct_ptrs
+       replace_symbol dumpstructinfo_dynarr pdump_root_struct_ptr_dynarr
+       replace_symbol dumpstructinfo pdump_root_struct_ptr
+       replace_symbol dumpstruct dump_add_root_struct_ptr
+
+       replace_symbol dumpopaque dump_add_opaque
+       replace_symbol dumpopaqueinfo_dynarr pdump_opaque_dynarr
+       replace_symbol dumpopaqueinfos pdump_opaques
+       replace_symbol dumpopaqueinfo pdump_opaque
+
+       replace_symbol nb_structdump nb_root_struct_ptrs
+       replace_symbol nb_opaquedump nb_opaques
+
+       replace_symbol align_table pdump_align_table
+       replace_symbol dump_header pdump_header
+
+       replace_symbol DUMP_SIGNATURE_LEN PDUMP_SIGNATURE_LEN
+       replace_symbol DUMP_SIGNATURE PDUMP_SIGNATURE
+
+
+2001-01-12  Martin Buchholz  <martin@xemacs.org>
+
+       * s/aix4.h: Keep the C for AIX compiler from overaggressively
+       optimizing bytecount_to_charcount().
+
+2001-01-06  Golubev I. N.  <gin@mo.msk.ru>
+
+       * config.h.in:
+       (HAVE_DLFCN_H): Removed.
+       * sysdll.c: Remove HAVE__DLOPEN, HAVE_DLFCN_H.
+
+2001-01-06  Martin Buchholz  <martin@xemacs.org>
+
+       Portable dumper maintainability improvements.
+       * alloc.c (staticpro):
+       * alloc.c (staticpro_nodump):
+       * alloc.c (garbage_collect_1):
+       * alloc.c (reinit_alloc_once_early):
+       * alloc.c (init_alloc_once_early):
+       * alloc.c: Move dumper functions to alloc.c.
+       * dumper.c (pdump_backtrace):
+       * dumper.c (pdump_dump_structs):
+       * dumper.c (pdump_dump_opaques):
+       * dumper.c (pdump_dump_rtables):
+       * dumper.c (pdump_dump_wired):
+       * dumper.c (pdump):
+       * dumper.c (pdump_load_check):
+       * dumper.c (pdump_load_finish):
+       * dumper.c (pdump_file_unmap):
+       * dumper.c (pdump_file_get):
+       * dumper.c (pdump_resource_free):
+       * dumper.c (pdump_resource_get):
+       * dumper.c (pdump_file_free):
+       * dumper.c (pdump_file_try):
+       * dumper.c (pdump_load):
+       Remove fixed size limits on staticpro(), staticpro_nodump(),
+       dumpopaque(), dumpstruct() by using Dynarrs instead of static C arrays.
+       Remove custom code for dumping lrecord_implementations_table - use
+       dumpopaque instead.
+       Remove (most of the) custom code for dumping staticpros - dump it
+       like any other dynarr.
+
+       * alloc.h: Removed.  No longer useful, since dumper now more self-contained.
+       * dumper.c: Moved functions from alloc.c.
+       * alloc.c (dumpstruct): Moved to dumper.c.
+       * alloc.c (dumpopaque): Likewise.
+       * alloc.c (pdump_wire): Likewise.
+       * alloc.c (pdump_wire_list): Likewise.
+
+       * lisp.h (Dynarr_sizeof): New.
+       * lisp.h (Dynarr_begin): New.  Very slightly C++oid.
+       * lisp.h (Dynarr_end): New.  Very slightly C++oid.
+       * lisp.h (Lisp_Object_ptr_dynarr): New.  For staticpros.
+
+       * lisp.h (dumpstruct): Define to nothing if not PDUMPing.
+       * lisp.h (dumpopaque): ditto.
+       * lisp.h (pdump_wire): ditto.
+       * lisp.h (pdump_wire_list): ditto.
+
+2001-01-09  Martin Buchholz  <martin@xemacs.org>
+
+       * make-src-depend (PrintPatternDeps):
+       Use `sort' to make output independent of perl version.
+
+2001-01-08  Martin Buchholz  <martin@xemacs.org>
+
+       Port to Netbsd 1.5.
+       * unexelf.c: Remove (never used) bogus Netbsd-specific cruft.
+       * s/netbsd.c: Use unexelf.o if __ELF__ is defined.
+
+2001-01-03  Didier Verna  <didier@xemacs.org>
+
+       * event-stream.c (emacs_handle_focus_change_preliminary): ensure
+       that `focus_frame' is alive before thinking of calling
+       `redisplay_redraw_cursor' on it.
+
+2001-01-08  Martin Buchholz <martin@xemacs.org>
+
+       * XEmacs 21.2.40 is released.
+
+2001-01-06  Golubev I. N.  <gin@mo.msk.ru>
+
+       * regex.c: Replace PREFETCH with REGEX_PREFETCH.
+
+2001-01-06  Martin Buchholz  <martin@xemacs.org>
+
+       * alloc.c (dbg_valmask): Make const.
+       * alloc.c (dbg_typemask): Make const.
+       * alloc.c (dbg_USE_UNION_TYPE): Make const.
+       * alloc.c (dbg_valbits): Make const.
+       * alloc.c (dbg_gctypebits): Make const.
+
+2001-01-06  Stephen J. Turnbull  <stephen@xemacs.org>
+
+       * redisplay-x.c (x_bevel_area):
+       redisplay.h (struct rune):
+       Typo fixes in comments.
+
+2001-01-05  Andy Piper  <andy@xemacs.org>
+
+       * glyphs-x.c (x_redisplay_widget): use size changed for offset
+       adjustment.
+
+       * menubar.c (menubar_visible_p_changed): don't mark frame changed.
+
+2001-01-05  Martin Buchholz  <martin@xemacs.org>
+
+       * alloc.c (pure-bytes-used): Remove unused mendacious variable.
+
+       * mule-ccl.c (stack_idx_of_map_multiple):
+       Non const global data must not be initialized!
+       Found by MIYASHITA Hisashi.
+
+2001-01-02  Andy Piper  <andy@xemacs.org>
+
+       * frame.c (change_frame_size): make sure frame size is always
+       marked as changed.
+
+       * glyphs.c (image_instance_layout): minor code reuse.
+
+       * window.c (Fcurrent_window_configuration): revert previous
+       change.
+
+2001-01-02  Martin Buchholz  <martin@xemacs.org>
+
+       * glyphs.h:
+       * glyphs.c (make_image_instance_cache_hash_table): Use ANSI prototypes.
+
+2000-12-31  Andy Piper  <andy@xemacs.org>
+
+       * glyphs-x.c (x_unmap_subwindow): return focus to enclosing frame
+       when widget gets unmapped.
+
+       * event-Xt.c (emacs_Xt_handle_widget_losing_focus): new
+       function. Make sure widgets losing focus don't just drop it.
+       (handle_focus_event_1): record the widget with focus.
+
+2000-12-31  Andy Piper  <andy@xemacs.org>
+
+       * window.c (allocate_window): use
+       make_image_instance_cache_hash_table.
+       (make_dummy_parent): ditto.
+       (Fset_window_configuration): ditto.
+
+       * glyphs.h (INSTANTIATOR_TYPE): new macro.  declare new functions.
+
+       * glyphs.c (process_image_string_instantiator): use
+       INSTANTIATOR_TYPE.
+       (get_image_instantiator_governing_domain): ditto.
+       (normalize_image_instantiator): ditto.
+       (instantiate_image_instantiator): ditto.
+       (make_image_instance_1): ditto.
+       (image_instantiate): ditto. Key on glyph *and* instantiator type.
+       (instantiator_eq_equal): new function for use with instance hash
+       tables.
+       (instantiator_eq_hash): ditto.
+       (make_image_instance_cache_hash_table): create a suitable hash
+       table for storing image instances.
+
+       * elhash.h (hash_table_weakness): new internal weakness type
+       HASH_TABLE_KEY_CAR_VALUE_WEAK.
+       declare new functions.
+
+       * elhash.c (finish_marking_weak_hash_tables): introduce yet
+       another weakness type for glyphs.
+       (make_standard_lisp_hash_table): new function split out from
+       make_general_lisp_hash_table.
+       (make_lisp_hash_table): call make_standard_lisp_hash_table.
+       (hash_table_instantiate): ditto.
+       (Fmake_hash_table): ditto.
+
+2000-12-31  Martin Buchholz <martin@xemacs.org>
+
+       * XEmacs 21.2.39 is released.
+
+2000-12-29  Andy Piper  <andy@xemacs.org>
+
+       * menubar.c (menubar_visible_p_changed): signal the frame changed.
+
+       * glyphs-x.c (x_redisplay_widget): Re-calculate widget offsets if
+       the frame has changed so that we pick up geometry changes such as
+       menubar visibility.
+
+2000-12-28  Andy Piper  <andy@xemacs.org>
+
+       * lastfile.c (my_ebss): make a char array so we can pad the
+       bss. Fixes cygwin unexec.
+
+       * unexcw.c: invert BROKEN_GDB to NO_DEBUG.
+
+2000-12-26  Andy Piper  <andy@xemacs.org>
+
+       * event-Xt.c (emacs_Xt_force_event_pending): add some verbose
+       comments and try and be more precise about a non-/SIGIO world.
+       (emacs_Xt_event_pending_p): use XtAppPending under cygwin and non
+       SIGIO.
+
+       * redisplay-output.c (redisplay_normalize_glyph_area): make sure
+       we don't normalize to zero width or height.
+
+2000-12-24  Andy Piper  <andy@xemacs.org>
+
+       * Makefile.in.in (ldflags): add -mwindows when appropriate.
+
+2000-08-18  Golubev I. N.  <gin@mo.msk.ru>
+
+       * s/sco5.h: SCO 5 has pty support.
+
+2000-07-20  Kazuyuki IENAGA <ienaga@xemacs.org>
+
+       * input-method-xlib.c: supports both XIM_XLIB and USE_XFONTSET.
+       input-method-xlib.c contains whole contents of input-method-xfs.c,
+       so we can use input-method-xlib.c's code for USE_XFONTSET
+       using #ifdefs.
+       * input-method-xfs.c: removed.
+
+2000-12-20  Stephen Turnbull  <stephen@xemacs.org>
+
+       * file-coding.h (enum coding_category_type): reorder enumerators to
+       make autodetection safer.  Make CODING_CATEGORY_LAST an enumerator
+       (now one greater than largest real coding_category_type enumerator).
+       * file-coding.c (coding_category_symbol, coding_category_by_priority,
+       coding_category_system, fcd_descriptihon_1, decode_coding_category,
+       Fcoding_category_list, Fset_coding_priority_list,
+       Fcoding_priority_list, coding_system_from_mask, Fdetect_coding_region,
+       vars_of_file_coding): adjust for change in CODING_CATEGORY_LAST.
+
+2000-12-18  Yoshiki Hayashi  <yoshiki@xemacs.org>
+
+       * redisplay-output.c (redisplay_clear_top_of_window): Remove static.
+       * redisplay-output.c (redisplay_output_window): Clear top of window
+       when face is changed.
+       * redisplay-x.c (x_redraw_exposed_window): Call
+       redisplay_clear_top_of_window.
+       * redisplay.h: Publish redisplay_clear_top_of_window.
+
+2000-12-18  Yoshiki Hayashi  <yoshiki@xemacs.org>
+
+       * buffer.c (Fkill_buffer): Map over all devices.
+       * window.c (window_loop): Remove UNSHOW_BUFFER code.
+       (list_windows): New function.
+       (list_all_windows): Ditto.
+       (Freplace_buffer_in_windows): Use them.
+
+2000-02-02   Daiki Ueno        <ueno@ueda.info.waseda.ac.jp>
+
+       * database.c (berkdb_subtype): Recognize new subtype `queue'.
+       (Fopen_database): Use `db_create' instead of `db_open'.
+       (syms_of_database): Initialize Qqueue.
+
+2000-12-13  Yoshiki Hayashi  <yoshiki@xemacs.org>
+
+       * buffer.c (common_init_complex_vars_of_buffer): Initialize
+       buffer_local_face_property.
+       * buffer.h (struct buffer): New member buffer_local_face_property.
+       * window.c (Fset_window_buffer):  Mark window's face as changed
+       when buffer has buffer local face.
+       * window.h (MARK_WINDOW_FACES_CHANGED): New macro.
+       * objects.c (color_after_change): Set buffer_local_face_property
+       when locale of face specifier is buffer.
+       * objects.c (font_after_change): Ditto.
+       * objects.c (face_boolean_after_change): Ditto.
+       * glyphs.c (image_after_change): Ditto.
+
+2000-12-09  Dan Holmsand  <dan@eyebee.com>
+
+       * nt.c (mswindows_fstat): Report file permissions, volume serial
+       number, etc. Code adapted from FSF Emacs 20.7.
+
+2000-12-09  Dan Holmsand  <dan@eyebee.com>
+
+       * sysfile.h (lstat): Make lstat an alias for xemacs_stat instead
+       of stat when we don't have symbolic links, to make sure
+       mswindows_stat is called on mswindows.
+
+2000-12-12  Yoshiki Hayashi  <yoshiki@xemacs.org>
+
+       * alloca.c: Define malloc to xmalloc only when built with XEmacs.
+
+2000-12-12  Martin Buchholz  <martin@xemacs.org>
+
+       * doprnt.c (emacs_doprnt_1): More printing fixes.
+       Make printing of numbers compatible with libc and FSF Emacs.
+       BUG was: (format "%6.3f" 1.2) ==>"1.200000"
+       Use the system printf to do most of the hard work of formatting,
+       instead of doprnt_1().
+       Calculate memory to allocate for format string.
+       Remove arbitrary limit on precision, e.g. (format "%.1000f" 3.14)
+       (doprnt_1): Cleaner code and documentation.
+
+2000-12-01  Jerry James  <james@eecs.ukans.edu>
+
+       * Makefile.in.in: Use the loop variable to install headers.
+
+2000-12-04  Yoshiki Hayashi  <yoshiki@xemacs.org>
+
+       * window.c (Fsplit_window): Don't invalidate face cache.
+
+2000-12-04  Yoshiki Hayashi  <yoshiki@xemacs.org>
+
+       * minibuf.c (Fall_completions): Undo the previous change
+       which removed checking elements start with space.
+
+2000-12-06  Stephen Turnbull  <stephen@xemacs.org>
+
+       * mule-canna.c: Didier suppression.
+
+2000-12-06  Stephen Turnbull  <stephen@xemacs.org>
+
+       * mule-canna.c: rename static unsigned char buf[] to key_buffer
+       (warning suppression).  Add English comment translations.
+
+2000-12-05  Martin Buchholz  <martin@xemacs.org>
+
+       * unexelfsgi.c (unexec): Better test for mmap failure.
+
 2000-12-05  Martin Buchholz <martin@xemacs.org>
 
        * XEmacs 21.2.38 is released.
 
 2000-12-05  Martin Buchholz  <martin@xemacs.org>
 
+       * redisplay.c (bar-cursor): Make a user variable.
+
        * symsinit.h: Add init_postgresql_from_environment.
 
 2000-12-04  Yoshiki Hayashi  <yoshiki@xemacs.org>
        * buffer.c: Make find-file-compare-truenames default to true on
        windows.
 
-       * realpath.c (win32_abs_start): 
+       * realpath.c (win32_abs_start):
        (cygwin_readlink):
        (win32_readlink): New functions.
        (xrealpath): Return really real filenames on windows.
        (fast_string_match): Ditto.
        (search_command): Ditto.
        (search_buffer): Separate boyer_moore.  Check whether
-       boyer_moore is poosible.
+       boyer_moore is possible.
        (simple_search): New function.
        (boyer_moore): Separated from search_buffer. Translate char.