diff src/ChangeLog.2 @ 398:74fd4e045ea6 r21-2-29

Import from CVS: tag r21-2-29
author cvs
date Mon, 13 Aug 2007 11:13:30 +0200
parents
children 2f8bb876ab1d
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/ChangeLog.2	Mon Aug 13 11:13:30 2007 +0200
@@ -0,0 +1,8737 @@
+2000-01-09  Norbert Koch  <norbert@s.netic.de>
+
+	* sysfile.h: Remove definition of HAVE_FSYNC. It's tested for
+	in configure.
+
+2000-01-09  Martin Buchholz  <martin@xemacs.org>
+
+	* lisp.h (xfree_1): Make non-public.
+	* (xzero): Use '\0' in memset call for clarity.
+	* (ALIGNOF): Use __alignof__ instead of undocumented __alignof.
+	* alloc.c (allocate_string_chars_struct): 
+	(make_uninit_string): 
+	(resize_string): 
+	(verify_string_chars_integrity):
+	(compact_string_chars): Now only called for small strings.
+	(sweep_strings):
+	String allocation rewrite.
+	Properly handle resizing big strings.
+	Fixes crash when evaluating:
+	(aset (make-string 9003 ??) 1 (make-char 'latin-iso8859-1 57))
+	Use consistent coding convention.
+	Never use xfree_1() directly.
+	General cleanup.
+	(CHARS_TO_STRING_CHAR): Remove. No longer needed.
+	Big strings had unused space at beginning.
+
+	* scrollbar.c (specifier_vars_of_scrollbar):
+	* scrollbar.c (complex_vars_of_scrollbar):
+	* gutter.c (specifier_vars_of_gutter):
+	* menubar.c (specifier_vars_of_menubar):
+	* toolbar.c (specifier_vars_of_toolbar):
+	* glyphs.c (specifier_vars_of_glyphs):
+	* redisplay.c (specifier_vars_of_redisplay):
+	* window.c (specifier_vars_of_window):
+	* lisp.h (slot_offset): Remove slot_offset.
+	Replace all calls to `slot_offset' with the standard name, `offsetof'.
+
+	* menubar-x.c (compute_menubar_data):
+	Remove Fset_buffer(), always called by unwind_protect.
+	* menubar-x.c (menu_item_descriptor_to_widget_value_1): Fiddling.
+	* menubar-x.c (set_frame_menubar): comment fix.
+
+	* keymap.c (lookup_keys): Remove extra parens.
+	* keymap.c (lookup_events): Remove extra parens.
+
+	* dbxrc (run-temacs): Allow function to take arguments.
+
+	* Makefile.in.in (PURIFY_FLAGS): No longer need pointer-mask.
+
+2000-01-08  Andy Piper  <andy@xemacs.org>
+
+	* event-msw.c (mswindows_wnd_proc): don't need to check for widget
+	face anymore.
+
+	* frame.c (change_frame_size_1): use new glyph_* signatures.
+	(frame_conversion_internal): ditto.
+
+	* toolbar-x.c (x_get_button_size): Use modified glyph_*
+	signatures.
+
+	* redisplay.c (add_glyph_rune): Use modified glyph_* signatures.
+	(add_glyph_rune): dittto.
+	(add_margin_runes): ditto.
+	(create_left_glyph_block): ditto.
+	(create_right_glyph_block): ditto.
+	(redisplay_window): ditto.
+
+	* redisplay-output.c (redisplay_output_layout): Use modified
+	glyph_* signatures.
+
+	* glyphs.h: (struct image_instantiator_methods): change signature
+	of query_geometry and layout.
+	(struct Lisp_Image_Instance): Clean up fields for dynamic geometry
+	calculations.
+	(struct expose_ignore): change field types.
+	(struct subwindow_cachel): ditto.  declare new functions and
+	accessor macros.
+
+	* glyphs.c: (instantiate_image_instantiator): assign glyph when
+	creating the image instance.
+	(image_instance_hash): fixup for new and deleted fields.
+	(image_instance_equal): ditto.
+	(mark_image_instance): ditto.
+	(print_image_instance): ditto.
+	(allocate_image_instance): zero width and height. assign attached
+	glyph. mark as dirty for future layout.
+	(make_image_instance_1): pass Qnil as the glyph its attached to.
+	(Fimage_instance_height): simply return the height.
+	(Fimage_instance_width): simply return the width.
+	(image_instance_query_geometry): new function. query the image
+	instance's geometry by wiring through to format and device
+	specific methods. fallback on the existing geometry.
+	(image_instance_layout): new function. layout the image instance
+	by querying its geometry and then wiring through to format and
+	device specific methods.
+	(query_string_geometry): new function to decide the bounding box
+	of a string. text glyph geometry calculations moved here.
+	(query_string_font): new function. find out the font for a given
+	string in a given face.
+	(text_query_geometry): return geometry based on
+	quert_string_geometry.
+	(formatted_string_instantiate): call string_instantiate.
+	(image_instantiate): put strings in the per-window cache. Feed the
+	glyph to the instantiated image instance.
+	(glyph_height_internal): deleted.
+	(glyph_width): simply return the required dimension. re-layout if
+	the instance is dirty. Remove references to face_index and
+	frame_face which were only used for strings.
+	(glyph_ascent): ditto.
+	(glyph_descent): ditto.
+	(glyph_height): ditto.
+	(Fglyph_width): use new glyph_width function.
+	(Fglyph_ascent): use new glyph_ascent function.
+	(Fglyph_descent): use new glyph_descent function.
+	(Fglyph_height): use new glyph_height function.
+	(glyph_property_was_changed):
+	(glyph_image_instance_maybe): new function to possible create an
+	image instance from a glyph if we don't have one already.
+	(glyph_dirty_p): use it.
+	(glyph_layout): new function for laying out a glyph.
+	(glyph_query_geometry): new function for finding out the desired
+	geometry of a glyph.
+	(update_glyph_cachel_data): use new glyph_* signatures.
+	(update_subwindow): call resize_subwindow.
+	(map_subwindow): call update_subwindow if the image is dirty.
+	(subwindow_instantiate): add comment.
+	(Fresize_subwindow): don't actually resize the window, just record
+	the values and let update_subwindow handle it.
+	(Fglyph_animated_timeout_handler): use
+	MARK_IMAGE_INSTANCE_CHANGED.
+	(image_instantiator_format_create): declare things with
+	query_geometry and layout functions.
+
+	* glyphs-x.c: (x_update_subwindow): remove widget sizing.
+	(update_widget_face): use query_string_font.
+	(x_widget_set_property): don't return Qt when setting is
+	succesful.
+	(x_combo_box_instantiate): call widget_instantiate rather than
+	widget_instantiate_1.
+
+	* glyphs-widget.c: (widget_face_font_info): deleted.
+	(widget_text_to_pixel_conversion): deleted.
+	(widget_set_property): make sure the new text gets propagated to
+	the image instance.
+	(widget_layout): new function. wire through to device and format
+	specific methods.
+	(widget_query_geometry): new function. wire through to device and
+	format specific methods. fallback on geometry of widget text.
+	(initialize_widget_image_instance): fixup new fields.
+	(widget_instantiate_1): deleted.
+	(tree_view_instantiate): deleted.
+	(tree_view_query_geometry): new function. returns desired sizing
+	of tree view.
+	(tab_control_instantiate): deleted.
+	(tab_control_query_geometry): new function. returns desired sizing
+	of tab.
+	(widget_instantiate): subsume widget_instantiate_1. Fixup geometry
+	things in the light of dynamic layout.
+	(static_instantiate): deleted.
+	(layout_instantiate): use new glyph_* signatures.
+	(image_instantiator_format_create_glyphs_widget): fixup
+	query_geometry and layout declarations for various widgets.
+
+	* glyphs-msw.c: (mswindows_widget_instantiate): add comment.
+	(mswindows_button_instantiate): use query_string_font for geometry
+	calculations.
+	(mswindows_update_subwindow): ditto.
+	(mswindows_combo_box_instantiate): fixup for new geometry
+	management.
+	(mswindows_widget_set_property): Don't return Qt so that other
+	methods can be called.
+
+2000-01-08  Martin Buchholz  <martin@xemacs.org>
+
+	* gdbinit: rename to .gdbinit so that gdb will automatically source it.
+
+2000-01-09  Hrvoje Niksic  <hniksic@iskon.hr>
+
+	* insdel.c (signal_before_change): Make sure START and END are
+	within the buffer before calling report_extent_modification().
+	(signal_after_change): Ditto for START, NEW_END, and ORIG_END.
+
+2000-01-09  Hrvoje Niksic  <hniksic@iskon.hr>
+
+	* extents.h: Correct prototype of report_extent_modification().
+
+	* insdel.c (signal_before_change): Place record_unwind_protect()
+	outside MAP_INDIRECT_BUFFERS loops.
+	(signal_after_change): Ditto.
+
+	* extents.c (report_extent_modification): Don't expect pointer to
+	inside_change_hook.
+	(report_extent_modification_mapper): Explain why
+	closure->speccount is almost unused.
+
+	* insdel.c (change_function_restore): Call Fset_buffer only if
+	necessary.
+	(signal_before_change): Don't propagate inside_change_hook to
+	report_extent_modification().
+
+2000-01-07  Martin Buchholz  <martin@xemacs.org>
+
+	* elhash.c (make_general_lisp_hash_table): Remove purify UMR.
+	(hash_table_rehash_threshold): Removed. Update all callers.
+
+2000-01-03  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
+
+	* s/windowsnt.h: Fix mail locking stuff.
+
+	* s/aix3-2.h: Remove HAVE_FSYNC which is now autodetected.
+
+	* emacs.c (vars_of_emacs): Added `mail-lock-methods' and
+	`configure-mail-lock-method' variables.
+
+	* config.h.in: Fix mail locking stuff.
+
+2000-01-04  Martin Buchholz  <martin@xemacs.org>
+
+	* mule-charset.h (REP_BYTES_BY_FIRST_BYTE): 
+	Remove macro, always use inline function.
+	* mule-charset.c (make_charset): Don't assign to rep_bytes_by_first_byte.
+	(rep_bytes_by_first_byte): Make const.
+
+2000-01-03  Didier Verna  <didier@xemacs.org>
+
+	* redisplay.c (generate_fstring_runes): new parameter `offset'.
+	Take offset into account when outputting strings or glyphs.
+	(generate_formatted_string_db): call generate_fstring_runes with
+	an offset of 0 if generating a frame or icon title, or the
+	modeline hscroll if generating a modeline.
+
+	* redisplay.h: remove prototype of `generate_formatted_string' and
+	add prototype for `generate_formatted_string_db', now used in
+	"frame.c".
+
+	* frame.c: `title_string_display_line' and
+	`title_string_emchar_dynarr', formerly known as
+	`format_string_display_line' and `format_string_emchar_dynarr'
+	moved here from "redisplay.c".
+	(generate_title_string): formerly known as
+	`generate_format_string', moved here from "redisplay.c".
+	(update_frame_title): take these name changes into account.
+	(init_frame): new function. Initialize here the variables that
+	were previously in "redisplay.c" and initialized in
+	`init_redisplay'.
+
+	* frame.h: prototype for `init_frame'.
+
+	* window.c (Fmodeline_hscroll): restore the definition (remove the
+	MODELINE_IS_SCROLLABLE #ifdef).
+	(Fset_modeline_hscroll): ditto, docstring improvement, and return
+	the actual value that was set.
+	(struct saved_window): turn the `modeline_hscroll' field into a
+	Charcount.
+	(syms_of_window): restore the declaration of
+	`[set-]modeline-hscroll' (remove the MODELINE_IS_SCROLLABLE #ifdef).
+
+	* window.h (struct window): turn the `modeline_hscroll field' into
+	a Charcount.
+
+	* emacs.c: include "frame.h" to get `init_frame'.
+	(main_1): call `init_frame'.
+
+1999-12-31  Martin Buchholz <martin@xemacs.org>
+
+	* XEmacs 21.2.26 is released.
+
+1999-12-31  Andy Piper  <andy@xemacs.org>
+
+	* glyphs-x.c (x_widget_instantiate): Avoid X errors calling
+	XMapWindow() on a NULL pointer X window.
+
+1999-12-31  Martin Buchholz  <martin@xemacs.org>
+
+	* data.c (indirect_function): Use signal_void_function_error().
+
+	* lisp.h: Modify prototypes for signal_*().  Add SUBR_FUNCTION macro.
+
+	* eval.c (PRIMITIVE_FUNCALL): Optimize.
+	(signal_void_function_error): return result of Fsignal().
+	(signal_invalid_function_error): return result of Fsignal().
+	(signal_wrong_number_of_arguments_error): return result of Fsignal().
+	(signal_malformed_list_error): Add DOESNT_RETURN.
+	(signal_malformed_property_list_error): Add DOESNT_RETURN.
+	(signal_circular_list_error): Add DOESNT_RETURN.
+	(signal_circular_property_list_error): Add DOESNT_RETURN.
+	(Feval): Use returned results of signal_*().  Avoids a crash!
+	(Ffuncall): Use returned results of signal_*(). Avoids the crash:
+	  (setq debug-on-error t) (funcall 'foo) kbd{r42} kbd{RET}
+	- Only check for fun_nargs < subr_min_args if fun_nargs != max_args.
+	(function_argcount): Use signal_invalid_function_error().
+	(funcall_lambda): Use signal_wrong_number_of_arguments_error().
+	Use signal_invalid_function_error().
+
+1999-12-28  Andy Piper  <andy@xemacs.org>
+
+	* debug.c: rename debug_loop elements to X_ to avoid name clashes.
+
+	* menubar-x.c (menu_item_descriptor_to_widget_value_1): strdup
+	string_chars.
+	(menu_item_descriptor_to_widget_value_1): strdup name.
+	(pre_activate_callback): strdup name.
+
+	* scrollbar-x.c (scrollbar_instance_to_widget_value): strdup name.
+	(x_update_scrollbar_instance_status): use free_widget_value_tree.
+
+	* dialog-x.c (maybe_run_dbox_text_callback): strdup name.  use
+	free_widget_value_tree.
+	(dbox_descriptor_to_widget_value): ditto.
+
+	* gui-x.c (widget_value_unwind): use free_widget_value_tree.
+	(gui_items_to_widget_values_1): ditto.
+	(gui_items_to_widget_values): ditto.
+	(free_popup_widget_value_tree): free name.
+
+1999-12-27  Andy Piper  <andy@xemacs.org>
+
+	* nt.c (fstat): use get_osfhandle rather than the handle
+	directly. From Fabrice Popineau.
+
+	* process-nt.c (nt_open_network_stream): take types into account
+	when warning. From Fabrice Popineau.
+
+1999-12-24  Martin Buchholz <martin@xemacs.org>
+
+	* XEmacs 21.2.25 is released.
+
+1999-12-22  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
+
+	* syntax.c (vars_of_syntax): Initialize parse-sexp_ignore_comments.
+
+1999-12-21  Martin Buchholz  <martin@xemacs.org>
+
+	* editfns.c (Fpoint_min): 
+	(Fpoint_min_marker): 
+	(Fpoint_max): 
+	(Fpoint_max_marker): 
+	(Fchar_after): 
+	(Fchar_before): 
+	Docstring fixes.  What's a `buffer pointer' anyways?
+
+	* editfns.c (char=): Remove unused and undocumented optional
+	third BUFFER argument.
+
+	* toolbar.h (DEVICE_SUPPORTS_TOOLBARS_P): 
+	* fns.c (plists_differ): 
+	* elhash.c (HASH_CODE): 
+	* elhash.c (KEYS_EQUAL_P): 
+	* redisplay-output.c (redisplay_move_cursor): 
+	* redisplay.c (create_text_block): 
+	* floatfns.c (Flogb): 
+	* glyphs-msw.c (mswindows_initialize_image_instance_mask): 
+	* glyphs-msw.c (xpm_to_eimage): 
+	* buffer.h (POINT_MARKER_P): 
+	* syntax.c (scan_lists): 
+	* cmdloop.c (Fcommand_loop_1): 
+	* widget.c (Fwidget_apply): 
+	* regex.c (STREQ): 
+	Remove extra parens, esp. of the form ((expr))
+
+	* floatfns.c (Flogb): Make 64-bit clean.
+
+1999-12-12  Daniel Pittman  <daniel@danann.net>
+
+	* configure.in:
+	* configure.usage:
+        Clean up Athena widget support:
+	- Add `with-athena' to select a variant.
+	- Remove all `athena3d' options.
+	- Robust detection of Athena libraries and headers.
+        - Refuse to build with mismatched library and headers.
+        - Only build a 3d Athena if the user asks for it.
+
+1999-12-21  Andy Piper  <andy@xemacs.org>
+
+	* redisplay.c (redisplay_frame): check for faces changed when
+	reseting subwindow caches.
+
+	* glyphs.h (struct ii_keyword_entry): add copy_p.
+	(struct image_instantiator_methods): add query_geometry_method and
+	layout_children_method.
+	(IIFORMAT_VALID_GENERIC_KEYWORD): new macro to take into account
+	copying characteristics of keywords.
+	(IIFORMAT_VALID_NONCOPY_KEYWORD): new macro for defining keywords
+	whose arguments should not be copied by the specifier code.
+	(image_instance_geometry): new enum for layouts.
+	(struct Lisp_Image_Instance): re-jig for layouts and update
+	macros.
+
+	* glyphs.c (string_instantiate): rename variables.
+	(image_instantiate): add strings to those widgets that are
+	instantiated per-window.
+	(image_copy_vector_instantiator): new function for copying glyph
+	specifier instantiators.
+	(image_copy_instantiator): ditto.
+
+	* glyphs-x.c (x_update_subwindow): use new face update functions.
+	(update_widget_face): update to use new lwlib arg functions.
+	(update_tab_widget_face): new function for updating tab control
+	label faces.
+	(x_widget_instantiate): use new face update functions and new
+	lwlib arg functions.
+	(x_tab_control_instantiate): ditto.
+	(x_tab_control_set_property): ditto.
+
+	* glyphs-widget.c (VALID_GUI_KEYWORDS): use NONCOPY keyword for
+	callbacks and other things that could recurse.
+	(VALID_GUI_KEYWORDS): 
+
+	* event-msw.c: fix cpp stuff for cygwin < b20.
+
+	* config.h.in: move uid_t and friends to before the s&m files so
+	that they can be used there.
+
+	* Makefile.in.in (debug-temacs): new target that adds emacs
+	environment before invoking gdb.
+
+	* lwlib.h (_widget_args): new structure for holding widget
+	args. It is reference counted so that we don't have to copy Xt
+	args.
+	(_widget_value): remove widget args. Add reference to widget_args.
+
+	* lwlib.c (free_widget_value_contents): free widget args using
+	free_widget_value_args.
+
+	* lwlib-Xaw.c (xaw_update_one_widget): use new arg packet.
+	(xaw_update_one_widget): use XtIsSubclass for determining labels.
+
+	* lwlib.c (lw_add_value_args_to_args): modify to use our reference
+	counted arg packet.
+	(lw_add_widget_value_arg): new function. Add an arg to the arg
+	packet.
+	(free_widget_value_args): new function. Remove a reference counted
+	arg packet.
+	(lw_copy_widget_value_args): new function. Copy reference counted
+	arg packet.
+	(merge_widget_value_args): new function. Do a merge of widget
+	args.
+	(merge_widget_value): use it.
+	(copy_widget_value_tree): copy widget args using reference
+	counting, since we can't easily copy the args we have been given.
+
+	* specifier.h (struct specifier_methods): add copy_instantiator_method.
+
+	* specifier.c (build_up_processed_list): use
+	copy_instantiator_method if defined.
+
+1999-12-19  Martin Buchholz  <martin@xemacs.org>
+
+	* fns.c (Ffillarray): Use O(N), not O(N^2) algorithm for strings.
+
+1999-12-19  Hrvoje Niksic  <hniksic@iskon.hr>
+
+	* profile.c (sigprof_handler): FUN retrieved from the backtrace
+	can also be a cons representing anonymous interpreted function.
+
+1999-12-18  Martin Buchholz  <martin@xemacs.org>
+
+	* fns.c (mapcar1): 
+	(Fmapconcat): 
+	(Fmapcar): 
+	(Fmapvector): 
+	Docstring fixes.  Make them consistent with the lispref and ANSI Lisp.
+
+1999-12-17  Martin Buchholz  <martin@xemacs.org>
+
+	* print.c (print_internal): print ?+ instead of ?\+, etc...
+	Make printing a little more efficient.
+	Prevent buffer overflow if sizeof EMACS_INT > 8.
+	My first 128-bit fix!
+
+1999-12-14  Karl M. Hegbloom  <karlheg@inetarena.com>
+
+	* filelock.c (unlock_all_files): GC_CONSP should be CONSP
+
+1999-12-17  Martin Buchholz  <martin@xemacs.org>
+
+	* database.c:
+	* window.c:
+	* event-stream.c:
+	Remove last vestigial uses of GC_*
+	
+	* fns.c (mapcar1): Fix ***THREE*** obscure crashes in one function!
+	- Two of those involve evil mapping functions that destructively
+	  modify a list being mapped over.
+	- Any garbage collection when mapping over a string could cause a
+	  crash (typically in mapconcat).
+
+1999-12-08  Adrian Aichner  <adrian@xemacs.org>
+
+	* s\windowsnt.h (DIRECTORY_SEP): Initialize from
+	`Vdirectory_sep_char'.
+
+	* lisp.h: Add declaration for `Vdirectory_sep_char' to allow
+	customization of `DIRECTORY_SEP' under native Windows NT.
+
+1999-12-14  Katsumi Yamaoka   <yamaoka@jpl.org>
+
+	* buffer.c (Fbury_buffer): Add directions to the docstring.
+
+1999-12-14  Martin Buchholz <martin@xemacs.org>
+
+	* XEmacs 21.2.24 is released.
+
+1999-12-13  Martin Buchholz  <martin@xemacs.org>
+
+	* sound.c (vars_of_sound): Provide esd-sound if HAVE_ESD_SOUND
+
+	* nas.c: Fix compiler warnings.  Ansify.  C++ compilation support.
+
+1999-12-13  Kazuyuki IENAGA <ienaga@jsys.co.jp>
+
+	* input-method-xlib.c: Make sure src/ does not use Athena, except
+	indirectly through lwlib.
+
+1999-12-13  Gunnar Evermann  <ge204@eng.cam.ac.uk>
+
+	* dbxrc (pobj):	Add opaque_ptr, remove opaque_list.
+
+1999-12-10  Shenghuo ZHU <zsh@cs.rochester.edu>
+
+	* file-coding.c (add_coding_system_to_list_mapper): 
+	- (coding-system-list) should list aliases correctly.
+
+1999-12-07  Andy Piper  <andy@xemacs.org>
+
+	* fileio.c (vars_of_fileio): directory separator fix from Mike Alexander.
+	* windowsnt.h (ditto):
+
+1999-11-27  Adrian Aichner  <adrian@xemacs.org>
+
+	* sysfile.h: Encapsulate `fstat' for Windows NT just like stat to
+	get consistent file modification times.
+
+	* sysdep.h: Declare `wait_for_termination' to use process handle,
+	not PID, on Windows NT native.
+
+	* sysdep.c (wait_for_termination): Use process handle, not PID, on
+	Windows NT native.  Set exit code correctly on Windows NT.
+	(sys_subshell): Use process handle, not PID,
+	on Windows NT native.
+	(sys_fstat): Add ENCAPSULATE_FSTAT for Windows NT.
+
+	* process-nt.c (nt_create_process): Remove negative pid hack for
+	Windows 95.
+	(nt_send_process): Declare vol_proc volatile.
+	(get_internet_address): warn_when_safe if IP address cannot be
+	found.
+	(nt_open_network_stream): warn_when_safe if network stream fails
+	to open.
+	
+	* ntproc.c (create_child): Remove negative pid hack for Windows
+	95.  Remove incorrect and unnecessary USE_UNION_TYPE handling.
+
+	* nt.c (fstat): Encapsulate for Windows NT just like stat to get
+	consistent file modification times.
+
+	* callproc.c (call_process_cleanup): Use process handle, not PID,
+	on Windows NT native.
+	(Fcall_process_internal): Ditto.  Close fd_error in parent.  Don't
+	check for negative pid on Windows NT/9[58].
+
+1999-12-07  Martin Buchholz <martin@xemacs.org>
+
+	* XEmacs 21.2.23 is released.
+
+1999-12-06  Martin Buchholz  <martin@xemacs.org>
+
+	* events.c (Fcopy_event): Don't copy the lrecord_header.
+
+	* lisp.h (DO_REALLOC): 
+	Optimize.
+	Remove redundant parens.
+	Remove generic hygienic macro comment.
+
+	* lrecord.h (set_lheader_implementation): Remove redundant parens.
+
+1999-12-05  Martin Buchholz  <martin@xemacs.org>
+
+	* lstream.c (Lstream_adding): 
+	- Never compare a size_t and a possibly negative number.
+	- Optimize.
+
+1999-12-05  Kyle Jones  <kyle_jones@wonderworks.com>
+
+	* lisp/itimer.el: (require 'lisp-float-type).  Use
+	  floats directly in itimer-time-difference.
+
+1999-12-05  Andy Piper  <andy@xemacs.org>
+
+	* redisplay-output.c (redisplay_output_layout): avoid name hiding.
+
+	* gui.h: declare gui_add_item_keywords_to_plist.
+
+	* window.c (Fdelete_window): mark subwindows as changed so that
+	they can be GC'd if necessary.
+
+1999-12-02  Jan Vroonhof  <vroonhof@math.ethz.ch>
+
+	* src/callproc.c (Fcall_process_internal): Be careful in writing
+	terminating null when copying args. nargs can be < 4.
+	Idea from Klaus Frank <klausf@i3.informatik.rwth-aachen.de>
+
+1999-11-29  Kyle Jones  <kyle_jones@wonderworks.com>
+
+	* src/sound.c (Fding): Remove zero initialization of
+	  static variables to avoid crashes on systems that dump
+	  the initialized data segment read-only.
+
+1999-12-05  Jan Vroonhof  <vroonhof@math.ethz.ch>
+
+	* glyphs-x.c (convert_EImage_to_XImage): Guard against other
+	visual classes. From Rasmus Borup Hansen <rbh@math.ku.dk>
+
+1999-12-04  Martin Buchholz  <martin@xemacs.org>
+
+	* lstream.c: (filedesc_reader): 
+	(filedesc_writer): Try number 2: Support broken systems where
+	return type of read() and write() is different from ssize_t.
+
+	* systty.h: 
+	* sysdep.h:
+	* sysdep.c:
+	- Replace macro calls to EMACS_GET_TTY and EMACS_SET_TTY with
+	  function equivalents emacs_get_tty() and emacs_set_tty().
+	- Moved prototypes to systty.h, where struct event_tty is defined.
+	- Renamed bogus `waitp' parameter to `flushp'.
+
+	* lstream.c (filedesc_reader): Support broken systems where return
+	type of read() is different from ssize_t.
+
+	* events.c (Fcopy_event): Avoid redundant EQ test if event2 is nil.
+
+	* event-stream.c (menu_move_up): Remove redundant if block.
+	(menu_move_down): Gratuitous rewriting.
+	(menu_move_left): Work around Cygnus codefusion-990706 compiler bug.
+	(menu_move_right): Ditto.
+
+	* lrecord.h (copy_lcrecord):
+	(zero_lcrecord): 
+	Always add parentheses around uses of macro arguments.
+
+	* sysdll.c: #include <stdlib.h> for exit().
+	* unexhp9k800.x: #include <stdlib.h> for malloc().
+	Use proper prototype for Save_Shared_Data(void).
+
+1999-12-04  Jan Vroonhof  <vroonhof@math.ethz.ch>
+
+	* src/redisplay.c (point_would_be_visible): Correct for topclip.
+
+1999-12-02  Hrvoje Niksic  <hniksic@iskon.hr>
+
+	* lisp.h: Declare Qself_insert_defer_undo.
+
+	* event-stream.c (Fdispatch_event): Get the magic undo thing from
+	a symbol property, so commands other than self-insert-command can
+	install it.
+	(syms_of_event_stream): Define Qself_insert_defer_undo.
+
+1999-11-30  Martin Buchholz  <martin@xemacs.org>
+
+	* floatfns.c (emacs_rint): Rename rint to emacs_rint, so that
+	`#undef HAVE_RINT' works.
+
+	* sysdep.h: Fix up prototypes for sys_read_1(), sys_write_1()
+
+1999-11-25  Andy Piper  <andy@xemacs.org>
+
+	* select-msw.c (Fmswindows_set_clipboard): selection fixes from
+	Mike Alexander.
+	(Fmswindows_delete_selection): ditto.
+
+	* redisplay.h (CLASS_REDISPLAY_FLAGS_CHANGEDP): add size_changed.
+	(GLOBAL_REDISPLAY_FLAGS_CHANGEDP): ditto.
+
+	* redisplay.c (redisplay_device): move size changed to macros in
+	redisplay.h
+	(redisplay_without_hooks): ditto.
+
+	* redisplay-output.c (redisplay_output_layout): rename to avoid
+	name hiding.
+
+	* process-nt.c (struct nt_process_data): mks toolkit fixes from
+	Mike Alexander.
+	(nt_create_process): ditto.
+	(nt_send_process): ditto.
+
+	* nt.c (init_environment): make sure mingw32 gets the cached
+	system info.
+
+	* gui.h: declare gui_add_item_keywords_to_plist.
+
+	* event-msw.c (mswindows_wnd_proc): Clipboard fixes from Mike
+	Alexander.
+
+	* console-msw.h: fix cygwin define/header 1.0 problems.
+	* glyphs-msw.c: ditto.
+	* ntplay.c: ditto.
+	* unexcw.c: ditto.
+	* s/cygwin32/h: ditto.
+
+1999-11-29  XEmacs Build Bot <builds@cvs.xemacs.org>
+
+	* XEmacs 21.2.22 is released
+
+1999-11-28  Martin Buchholz <martin@xemacs.org>
+
+	* XEmacs 21.2.21 is released.
+
+1999-11-26  Martin Buchholz  <martin@xemacs.org>
+
+	* callproc.c (Fcall_process_internal):
+	* config.h.in:
+	* esd.c:
+	* event-msw.c (ntpipe_slurp_reader):
+	* event-msw.c (ntpipe_shove_writer):
+	* event-msw.c (winsock_reader):
+	* event-msw.c (winsock_writer):
+	* event-stream.c (dribble_out_event):
+	* fileio.c:
+	* fileio.c (Fexpand_file_name):
+	* glyphs-x.c (write_lisp_string_to_temp_file):
+	* gpmevent.c (tty_get_foreign_selection):
+	* lisp.h: Update prototypes.
+	* lstream.c (Lstream_flush_out):
+	* lstream.c (Lstream_write_1):
+	* lstream.c (Lstream_was_blocked_p):
+	* lstream.c (Lstream_read_more):
+	* lstream.c (Lstream_read):
+	* lstream.c (Lstream_fputc):
+	* lstream.c (make_stdio_output_stream):
+	* lstream.c (stdio_flusher):
+	* lstream.c (stdio_closer):
+	* lstream.c (make_filedesc_output_stream):
+	* lstream.c (errno_would_block_p):
+	* lstream.c (filedesc_writer):
+	* lstream.c (make_lisp_string_input_stream):
+	* lstream.c (make_fixed_buffer_output_stream):
+	* lstream.c (fixed_buffer_reader):
+	* lstream.c (make_resizing_buffer_output_stream):
+	* lstream.c (make_dynarr_output_stream):
+	* lstream.c (make_lisp_buffer_output_stream):
+	* lstream.c (lisp_buffer_reader):
+	* lstream.h (lstream_implementation):
+	* md5.c (Fmd5):
+	* miscplay.h (reset_parsestate):
+	* process-nt.c (nt_send_process):
+	* process-unix.c (unix_send_process):
+	* sound.c:
+	* sysdep.c (sys_close):
+	* sysdep.c (sys_read_1):
+	* sysdep.c (sys_write_1):
+	* sysfile.h:
+	* file-coding.c (determine_real_coding_system):
+	* file-coding.c (Fdetect_coding_region):
+	* file-coding.c (struct decoding_stream):
+	* file-coding.c (decoding_reader):
+	* file-coding.c (Fdecode_coding_region):
+	* file-coding.c (struct encoding_stream):
+	* file-coding.c (encoding_reader):
+	* file-coding.c (Fencode_coding_region):
+	* file-coding.c (convert_to_external_format):
+	* file-coding.c (convert_from_external_format):
+	- Lstream functions mirror Unix98 read(),write().  Therefore use
+	  Unix98 types size_t and ssize_t.  
+	- Try to make Lstream* functions 64-bit clean.  Someday someone
+	  may actually want to read from a Lstream with more than 2**32 bytes.
+	- Add configure support for ssize_t.
+	- Update all callers of Lstream_read and Lstream_write to
+	  use the new types.
+	- Fix esd* initiated C++ compile errors.
+	- Remove comments referring to `fpurge' - we don't want to call it
+	  even if it's there.
+
+	* lisp.h
+	- Remove some lingering Lucid compiler support.
+
+	* lisp.h
+	- Add prototype for Fdelete_process.
+
+	* gpmevent.c (Freceive_gpm_event): Remove unused variables.
+
+1999-11-27  Martin Buchholz  <martin@xemacs.org>
+
+	* Makefile.in.in (depend): Only update `depend' if there were changes.
+
+1999-11-26  Martin Buchholz  <martin@xemacs.org>
+
+	* editfns.c (get_system_name): Remove.
+
+1999-11-26  Martin Buchholz  <martin@xemacs.org>
+
+	* device-x.c (x_init_device): 
+	- Replace magic number `17' with equivalent expn using sizeof.
+	- Replace strcmp with marginally more efficient memcmp.
+	- Avoid using C++ reserved word `class'.
+
+	* file-coding.c (determine_real_coding_system): 
+	- Look for both initial and final -*- cookies.
+	- Replace EQ (foo, Qnil) with NILP (foo)
+	- Make searching for cookies more efficient.
+	- Recognize only rfc 1521 characters in charset names.
+
+1999-11-22  Kazuyuki IENAGA <kazz@imasy.or.jp>
+
+	* input-method-xlib.c (IMDestroyCallback): #ifdef'd by
+	"THIS_IS_X11R6", because it shouldn't be evaluated unless X11R6.
+	* input-method-xlib.c (IMInstantiateCallback): Ditto.
+	* input-method-xlib.c (XIM_init_device): Revive XOpenIM function
+	call for X11R5 systems.
+	* input-method-xlib.c (XIM_delete_frame): Enabled XDestroyIC()
+	again because XIM doesn't concern with frame deletion itself.
+	The XIC will be cleared by XIM when XIM is closing (at XIM destroy
+	callback).
+
+1999-10-25  Kazuyuki IENAGA <kazz@imasy.or.jp>
+
+        * input-method-xlib.c: Added new lisp object Qxim_xlib.
+        New macro xim_warn(str), xim_warn1(fmt,str) and xim_info(str).
+        All the valid stderr_out were changed to those macros.
+        (IMDestroyCallback): Don't test the XIC if the frame is not X
+        frame.
+        (IMInstantiateCallback): Treat the client_data as "device" not
+        "frame" because the caller changed from frame to device.
+        Here initializes XIM and activates XICs for each frame which
+        doesn't have XIC.
+        (XIM_init_device): Register the XIM instantiation callback which
+        had been performed by XIM_init_frame() before.
+        (XIM_delete_frame): Added a test for the XIM before clearing XIC.
+        (XIM_init_frame): Placed an actual code for XIC activation which
+        was moved from IMInstantiateCallback.
+        (syms_of_input_method_xlib): New function which includes a symbol
+        Qxim_xlib that uses in emacs.c.
+
+        * emacs.c: Added a function entry "syms_of_input_method_xlib" for
+        input_method_xlib.
+
+        * symsinit.h: Added a declaration of "syms_of_input_method_xlib".
+
+1999-11-05  Robert Pluim  <rpluim@bigfoot.com>
+
+	* emacs.c (shut_down_emacs): Point users to PROBLEMS file
+
+1999-11-16  Jan Vroonhof  <vroonhof@math.ethz.ch>
+
+	* redisplay-output.c (compare_runes): Add comments about
+	results from profiling.
+
+	* redisplay.h (struct rune): Do not use bitfields for members.
+	(struct rune): Add various comments about further optimizations.
+	
+1999-11-19  Eric Darve  <darve@crocco.stanford.edu>
+
+	* abbrev.c (abbrev_oblookup): Check whether wordend <= wordstart
+	if Vabbrev_start_location is used too.
+
+1999-10-27  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
+
+	* file-coding.c (detect_eol_type): Return CR when two
+	sequential CR are found.
+	(determine_real_coding_system): Check EOL type when coding:
+	cookie is found and EOL type is not specified.
+	Don't assume 8bit char as part of coding: cookie.
+
+1999-10-26  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
+
+	* file-coding.c (determine_real_coding_system): Check if
+	'-*-' exists. End searching for coding: cookie at the end
+	of line. Check whether character before coding: is space,
+	tab or ';'.
+
+1999-11-07  William M. Perry  <wmperry@aventail.com>
+
+	* gpmevent.c: Completely rewrote GPM mouse support for linux
+	  console.  The TTY console and event stream are modified at run
+	  time, so this code can now be used as a module.
+	  (tty_get_foreign_selection): New function to allow pasting from
+	  other virtual consoles.
+	  (Fgpm_enable): New lisp-visible function to turn GPM on or off
+	  at run time.
+
+	* device-tty.c (tty_asynch_device_change): No longer need to
+	  notify GPM code of window/console height/width changes.
+
+	* console-tty.c (tty_init_console): Removed outdated GPM support
+	  that was part of the console/event code.
+
+	* event-Xt.c (emacs_Xt_select_console): Ditto
+
+	* event-Xt.c (emacs_Xt_unselect_console): Ditto
+
+	* event-unixoid.c (read_event_from_tty_or_stream_desc): Ditto
+
+	* frame-tty.c (console_type_create_frame_tty): Ditto
+
+1999-11-17  Martin Buchholz  <martin@xemacs.org>
+
+	* nt.c:
+	* sysdep.c:
+	* s/mingw32.h:
+	* s/windowsnt.h:
+	- Use Unix 98 types uid_t, gid_t, pid_t.
+	- Define them.
+
+1999-11-01  Olivier Galibert  <galibert@pobox.com>
+
+	* alloc.c (reinit_alloc_once_early): Move purify_flag init...
+	* emacs.c (main_1): ...here, to get the correct value even with
+ 	the portable dumper.
+
+1999-11-17  Martin Buchholz  <martin@xemacs.org>
+
+	* lisp.h (BIT_VECTOR_LONG_STORAGE): Add extra parens.  It's a macro!
+
+	* tooltalk.c (tt_build_string): Remove extra parens.
+	* process.c (print_process): Remove extra parens.
+	* buffer.h (BI_BUF_PTR_BYTE_POS): 
+	(BUF_PTR_BYTE_POS): 
+	(BI_BUF_BYTE_ADDRESS): 
+	(BI_BUF_BYTE_ADDRESS_BEFORE): 
+	(valid_memind_p): 
+	(bytind_to_memind): 
+	(memind_to_bytind):
+	Remove extra parens.  Inline functions are not macros.
+
+	* editfns.c (Fuser_login_name): 
+	(user_login_name):
+	Use proper type uid_t.
+
+1999-11-15  Martin Buchholz  <martin@xemacs.org>
+
+	* syntax.c (complex_vars_of_syntax): Make more readable.
+	(define_standard_syntax): New function.
+
+	* syntax.c (forward-comment): Gradually make XEmacs 64-bit-clean.
+
+1999-11-14  Martin Buchholz  <martin@xemacs.org>
+
+	* mule-ccl.c (CCL_WRITE_STRING): Fix compiler warnings.
+
+1999-11-12  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
+
+	* mule-charset.h (LEADING_BYTE_OFFICIAL_1, LEADING_BYTE_OFFICIAL_2):
+	New enum type to make sure no gap in the leading byte definition.
+
+1999-11-11  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
+
+	* mule-charset.h (LEADING_BYTE_CYRILLIC_ISO_8859_5,
+	LEADING_BYTE_LATIN_ISO8859_9): Moved to 0x8B and 0x8C
+	to remove a hole in leading byte definition.
+
+1999-11-10  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
+
+	* mule-charset.c (non_ascii_valid_charptr_p): Check if
+	private charset is defined.
+
+1999-11-09  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
+
+	* mule-ccl.c (ccl_driver): Make sure generated sequences
+	are valid when doing `CCL_WRITE_STRING'.
+	(ccl-execute-on-string): Pass CCL_MODE_DECODING to ccl_driver.
+
+1999-11-10  XEmacs Build Bot <builds@cvs.xemacs.org>
+
+	* XEmacs 21.2.20 is released
+
+1999-11-04  Martin Buchholz  <martin@xemacs.org>
+
+	* mule-ccl.c (ccl_driver): Warning suppression
+
+1999-11-01  SL Baur  <steve@miho.m17n.org>
+
+	* emacs.c (main_1): Guard call to reinit_vars_of_debug when not
+	building a debugged XEmacs.
+
+1999-10-28  Andreas Jaeger  <aj@suse.de>
+
+	* src/emacs.c (main_1): Don't set the malloc hooks if using
+	DOUG_LEA_MALLOC.
+
+1999-10-30  Olivier Galibert  <galibert@pobox.com>
+
+	* alloc.c (pdump_dump_rtables): Don't forget to dump the last
+ 	registered type.
+	(pdump): Ditto.
+
+1999-10-25  Olivier Galibert  <galibert@pobox.com>
+
+	* emacs.c (main_1): Call reinit_vars_of_scrollbar_x.
+
+	* symsinit.h: Declare reinit_vars_of_scrollbar_x.
+
+1999-10-25  Martin Buchholz  <martin@xemacs.org>
+
+	* redisplay.h (CLASS_RESET_CHANGED_FLAGS): 
+	(GLOBAL_RESET_CHANGED_FLAGS): 
+	(CLASS_REDISPLAY_FLAGS_CHANGEDP): 
+	(RESET_CHANGED_SET_FLAGS): 
+	Fix C++ compile errors/warnings.
+	These macros were just a tad too clever.
+
+	* process-unix.c (unix_open_network_stream):
+	* objects-x.c (allocate_nearest_color):
+	* mule-charset.c (vars_of_mule_charset): 
+	* fileio.c (Ffile_truename): 
+	* file-coding.c (vars_of_file_coding): 
+	Fix compile errors/warnings.
+
+	* alloc.c (xstrdup): Use fact that memcpy returns its first arg.
+	(allocate_lisp_storage): Simplify.
+
+1999-10-24  Olivier Galibert  <galibert@pobox.com>
+
+	* conslots.h: Add defines with first and last slot names.
+	* bufslots.h: Add defines with first and last slot names.
+
+	* buffer.c (common_init_complex_vars_of_buffer): Renamed from
+ 	reinit_complex_vars_of_buffer
+	(reinit_complex_vars_of_buffer): Reset the slots to the dumped
+ 	value.
+	(complex_vars_of_buffer): Dump the slots values.
+
+	* console.c (common_init_complex_vars_of_console): Renamed from
+ 	reinit_complex_vars_of_console
+	(reinit_complex_vars_of_console): Reset the slots to the dumped
+ 	value.
+	(complex_vars_of_console): Dump the slots values.
+
+	* alloc.c: Rename reloc_table to pdump_reloc_table, rt_list to
+ 	pdump_rt_list and move them at the beginning of the file.
+	(gc_sweep): Unmark pdumped objects after the sweep phase.
+	(pdump_dump_rtables): Change a bare 256 to
+ 	last_lrecord_type_index_assigned.  Add a separator between the
+ 	adresses or lrecords and the ones of C structs in the dump file.
+	(pdump_load): Cope with the new separator and the renamings.  Stop
+ 	looking for the hash tables list after it has been found (duh!).
+
+1999-10-24  Robert Bihlmeyer <robbe@orcus.priv.at>
+
+	* sound.c: support HAVE_ESD_SOUND
+
+	* miscplay.c: 
+	* miscplay.h: 
+	* linuxplay.c: Move large part of linuxplay to generalized file
+	miscplay. Make it platform independent.
+
+	* esd.c: New file
+
+1999-10-24  Adrian Aichner <adrian@xemacs.org>
+
+	* lisp.h (Dynarr_declare): Fix boo-boo.
+
+1999-10-24  Olivier Galibert  <galibert@pobox.com>
+
+	* process-unix.c (allocate_pty): Fix HAVE_GETPT.
+	* process.h: Ditto.
+
+1999-10-24  Jan Vroonhof  <vroonhof@math.ethz.ch>
+
+	* redisplay.c (start_with_line_at_pixpos): Remove assert(cur_elt
+	>=0). Handle the cur_elt == 0 case.
+
+1999-10-24  Jan Vroonhof  <vroonhof@math.ethz.ch>
+
+	* unexelf.c: Merge Martin's c++ fixes back in 
+
+1999-10-20  Jan Vroonhof  <vroonhof@math.ethz.ch>
+
+        * unexelf.c (unexec): Only copy the global offset
+        table from memory on sgi machines.
+
+1999-08-13     Alexandre Oliva <oliva@dcc.unicamp.br>, Vin Shelton <acs@xemacs.org>
+
+        * unexelf.c: Enable GNU/Linux/alpha to build with gcc 2.95 by
+        adding support for an sbss section.  Get IRIX 5.2 to build using
+        unexelf.c.
+
+        * m/iris4d.h: Use unexelf.o for unexec.
+
+        * m/iris5d.h: Use unexelf.o for unexec.
+
+1999-10-24  Jan Vroonhof  <vroonhof@math.ethz.ch>
+
+	* unexelf.c: Revert to 21.1 version
+
+1999-08-28  Jan Vroonhof  <vroonhof@math.ethz.ch>
+
+	* window.c (Fwindow_truncated_p): New function.
+
+1999-08-25  Jonathan Marten <jonathan.marten@uk.sun.com>
+
+	* window.c (window_truncation_on): Always return 0 for minibuffer
+ 	windows, to enable auto scrolling.
+
+1999-10-24 Neal Becker <nbecker@fred.net>
+	* process.h: Unix98 PTY support
+
+1999-10-17  Jan Vroonhof  <vroonhof@math.ethz.ch>
+
+	* fileio.c (Ffile_truename): Do proper mule decoding on
+	the argument to xrealpath()
+
+1999-08-19  Stephen Tse  <stephent@sfu.ca>
+
+	* process-unix.c (unix_open_network_stream): Add udp network
+ 	support; rename variable Qtcpip to Qtcp, parameter family to
+ 	protocol for consistency with Qudp.
+
+	* process-nt.c (nt_open_network_stream): Rename variable Qtcpip to
+ 	Qtcp, parameter family to protocol for consistency with Qudp.
+
+	* process.c (global_variables): Add a new variable Qudp for udp
+ 	network support; rename variable Qtcpip to Qtcp for consistency
+ 	with Qudp.
+	(Fopen_network_stream_internal): Rename parameter FAMILY to
+ 	PROTOCOL for consistency; fix a minor typo and add an explanation
+ 	in docstring for udp programming.
+	(Fopen_multicast_group_internal): Fix a minor typo in docstring.
+	(syms_of_process): Add a new variable Qudp for udp network
+ 	support; rename variable Qtcpip to Qtcp for consistency with Qudp.
+
+	* process.h (extern_variables): Add a new variable Qudp for udp
+ 	network support; rename variable Qtcpip to Qtcp for consistency
+ 	with Qudp.
+
+	* procimpl.h: Add a new variable Qudp for udp network support;
+ 	rename variable Qtcpip to Qtcp for consistency with Qudp.
+	(struct process_methods): Rename parameter family to protocol.
+
+
+1999-10-24  Olivier Galibert  <galibert@pobox.com>
+
+	* alloc.c (pdump_make_hash): Divide pointers by 8 for a better hash.
+
+1999-10-23  Olivier Galibert  <galibert@pobox.com>
+
+	* lrecord.h (struct lrecord_header): Removed dumped flags.
+
+	* dynarr.c: Use DUMPEDP instead of dumped flag.
+
+	* lisp.h (DUMPEDP): Added.  Removed dumped flag from dynarr.
+
+	* alloc.c: Removed hash_next linked list pointer.
+	
+	* *.c *.h: Removed markobj and mark_object parameters, removed GC_
+ 	and XGC macros.
+
+1999-10-14  Andy Piper  <andy@xemacs.org>
+
+	* redisplay-x.c (x_output_shadows): fix dodgy maths for border
+ 	calculations.
+
+	* gutter.c (output_gutter): be more accurate about the area to be
+ 	cleared since X seems to manage to do the clear after drawing the
+ 	border.
+
+	* redisplay.h (RESET_CHANGED_FLAGS): new macro for setting
+ 	redisplay flags as a group.
+	(RESET_CHANGED_SET_FLAGS): ditto.
+	(CLASS_RESET_CHANGED_FLAGS): ditto.
+	(GLOBAL_RESET_CHANGED_FLAGS): ditto.
+	(REDISPLAY_FLAGS_CHANGEDP): new macro for testing redisplay flags
+ 	as a group.
+	(CLASS_REDISPLAY_FLAGS_CHANGEDP): ditto.
+	(GLOBAL_REDISPLAY_FLAGS_CHANGEDP): ditto.
+
+	* redisplay.c (redisplay_frame): use CLASS_RESET_CHANGED_FLAGS
+ 	instead of setting flags individually.
+	(redisplay_device): ditto CLASS_REDISPLAY_FLAGS_CHANGEDP.
+	(redisplay_device): ditto.
+	(redisplay_device): ditto CLASS_RESET_CHANGED_FLAGS.
+	(redisplay_without_hooks): ditto GLOBAL_REDISPLAY_FLAGS_CHANGEDP.
+	(redisplay_without_hooks): ditto CLASS_REDISPLAY_FLAGS_CHANGEDP.
+	(redisplay_without_hooks): ditto.
+	(redisplay_without_hooks): ditto GLOBAL_RESET_CHANGED_FLAGS.
+
+	* redisplay-x.c (x_output_string): unmap subwindows in the area.
+	(x_output_blank): ditto.
+
+	* redisplay-output.c (redisplay_output_display_block): don't unmap
+ 	subwindows in case layout optimization can avoid it.
+	(redisplay_output_subwindow): unmap subwindows in the area.
+	(redisplay_output_layout): optimize the output of layouts - only
+ 	output glyphs that have changed if nothing else of redisplay
+ 	significance has occurred.
+	(redisplay_output_pixmap): change args to
+ 	redisplay_clear_clipped_region.
+	(redisplay_clear_clipped_region): allow the clipped region to be
+ 	cleared of all subwindows except the one passed in.
+
+	* redisplay-msw.c (mswindows_output_blank): unmap subwindows in
+ 	the area.
+	(mswindows_output_cursor): ditto.
+	(mswindows_output_string): ditto.
+
+	* gutter.c (calculate_gutter_size): if the window buffer is nil
+ 	then don't continue.
+	(update_frame_gutters): be more lenient about when we actually
+ 	update the gutter. Layout optimization makes this
+ 	non-costly. Cache redisplay flags that we want to temporarily
+ 	ignore.
+
+	* glyphs.c (Fglyph_animated_timeout_handler): handle image
+ 	specific timeouts rather than iterating over the instance cache.
+	(glyph_animated_timeout_mapper): deleted.
+	(add_glyph_animated_timeout): use a weak list to hold onto the
+ 	image so that it can be GC'ed.
+	(disable_glyph_animated_timeout): disable a specific timeout.
+	(vars_of_glyphs): disable-animated-pixmaps is a new boolean for
+ 	controlling whether pixmaps are animated or not.
+
+	* glyphs-msw.c (mswindows_finalize_image_instance): make sure the
+	image timeout gets disabled when the image gets freed.
+
+	* glyphs-eimage.c (gif_instantiate): remove meaningless
+ 	comment. Cope with timeouts specified in the gif extension block.
+
+	* event-msw.c (vars_of_event_mswindows): new variable
+ 	mswindows-meta-activates-menu.
+	(mswindows_wnd_proc): only goto defproc with VK_MENU if the user
+ 	wants it.
+
+	* glyphs-x.c (x_finalize_image_instance): delete mask first so
+ 	that we can compare with image.
+
+1999-10-14  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+
+	* event-msw.c (mswindows_key_to_emacs_keysym):
+	Recognise keypad keys as different from normal keys.
+
+1999-10-14  Didier Verna  <didier@xemacs.org>
+
+	* glyphs-x.c (x_finalize_image_instance): avoid freeing null pixmaps.
+
+1999-10-10  Olivier Galibert  <galibert@pobox.com>
+
+	* symbols.c (init_symbols_once_early): dump Vquit_flag.
+
+	* symsinit.h: Updated.
+
+	* ntproc.c (vars_of_ntproc): Use defsymbol.
+
+	* emacs.c (main_1): Updated reinit calls.
+
+	* lisp.h: Removed Fpurecopy and pure_put declarations.
+	* fns.c: Removed pure_put.
+
+	* eval.c (Fdefvar): pure_put -> Fput
+	(Fdefconst): Ditto.
+	* frame-x.c (init_x_prop_symbols): Ditto.
+	* symbols.c (deferror): Ditto.
+
+	* alloc.c (Fmake_byte_code): Remove Fpurecopy call.
+	* buffer.c (vars_of_buffer): Ditto.
+	* bytecode.c (Ffetch_bytecode): Ditto.
+	(optimize_compiled_function): Ditto.
+	* emacs.c (vars_of_emacs): Ditto.
+	* emodules.c (vars_of_module): Ditto.
+	* eval.c (define_function): Ditto.
+	(Fautoload): Ditto.
+	* frame.c (vars_of_frame): Ditto.
+	* intl.c (Fset_domain): Ditto.
+	* lread.c (load_force_doc_string_unwind): Ditto.
+	* menubar.c (vars_of_menubar): Ditto.
+	* minibuf.c (reinit_complex_vars_of_minibuf): Ditto.
+
+	* debug.c (reinit_vars_of_debug): Extracted.
+	* device-x.c (reinit_vars_of_device_x): Ditto.
+	* emodules.c (reinit_vars_of_module): Ditto.
+	* font-lock.c (reinit_vars_of_font_lock): Ditto.
+	* glyphs-widget.c (reinit_vars_of_glyphs_widget): Ditto.
+	* glyphs.c (reinit_vars_of_glyphs): Ditto.
+	* gui-x.c (reinit_vars_of_gui_x): Ditto.
+	* insdel.c (reinit_vars_of_insdel): Ditto.
+	* menubar-x.c (reinit_vars_of_menubar_x): Ditto.
+	* minibuf.c (reinit_complex_vars_of_minibuf): Ditto.
+	* mule-wnnfns.c (reinit_vars_of_mule_wnn): Ditto.
+	* print.c (reinit_vars_of_print): Ditto.
+	* redisplay.c (reinit_vars_of_redisplay): Ditto.
+	* select-x.c (reinit_vars_of_xselect): Ditto.
+	* undo.c (reinit_vars_of_undo): Ditto.
+
+1999-10-10  Olivier Galibert  <galibert@pobox.com>
+
+	* symsinit.h: Updated declarations, see other ChangeLog entries.
+
+	* redisplay.c (init_redisplay): Ensure proper reinitialisation.
+
+	* lrecord.h (XD_DYNARR_DESC): Introduce XD_INT_RESET and use it.
+
+	* glyphs.c: Add the ii_keyword_entry and related descriptions.
+  	Fix the image_instantiator_methods one.
+
+	* file-coding.c: Plonk all data that needs to be dumped in a
+ 	dynamically allocated structure.
+
+	* extents.c (reinit_vars_of_extents): Extracted from
+ 	vars_of_extents.
+
+	* event-stream.c (vars_of_event_stream): Don't staticpro when
+ 	pdump_wire is enough.
+
+	* event-msw.c (reinit_vars_of_event_mswindows): Extracted from
+ 	vars_of_event_mswindows.
+
+	* event-Xt.c (reinit_vars_of_event_Xt): Extracted from
+ 	vars_of_event_Xt.
+
+	* eval.c (vars_of_eval): Don't staticpro when pdump_wire is enough.
+
+	* emacs.c (main_1): Added some reinit calls.
+
+	* device-x.c (reinit_console_type_create_device_x): Extracted from
+ 	console_type_create_device_x.
+
+	* console.h: Declare the console_type_entry_dynarr description.
+
+	* console.c: Unstatic the console_type_entry_dynarr description.
+
+	* alloc.c: Removed some dubious comments.  Handle XD_INT_RESET.
+
+1999-10-07  Olivier Galibert  <galibert@pobox.com>
+
+	* symsinit.h: Updated declarations, see other ChangeLog entries.
+
+	* minibuf.c (reinit_complex_vars_of_minibuf): Extracted from
+ 	complex_vars_of_minibuf.
+
+	* lrecord.h: Removed XD_PARENT_INDIRECT (unused and
+ 	unimplemented), added XD_LO_LINK.
+
+	* lisp.h (pdump_wire_list): Add declaration.
+
+	* glyphs.h (INITIALIZE_DEVICE_IIFORMAT): Fix bug found by Andy.
+	(INITIALIZE_IMAGE_INSTANTIATOR_FORMAT): Fix stupid bug.
+	(REINITIALIZE_IMAGE_INSTANTIATOR_FORMAT): Remove, useless once the
+ 	stupid bug fixed.
+
+	* glyphs.c (reinit_image_instantiator_format_create): Remove.
+
+	* glyphs-x.c (reinit_image_instantiator_format_create_glyphs_x):
+ 	Remove.
+
+	* glyphs-widget.c
+ 	(reinit_image_instantiator_format_create_glyphs_widget): Remove.
+
+	* glyphs-msw.c
+ 	(reinit_image_instantiator_format_create_glyphs_mswindows):
+ 	Remove.
+
+	* glyphs-eimage.c
+ 	(reinit_image_instantiator_format_create_glyphs_eimage): Remove.
+
+	* frame.c (Fmake_frame): Don't reset the face cache when using the
+ 	stream device.
+
+	* file-coding.c: Dumped the_codesys_prop_dynarr and added all
+ 	relevant descriptions.
+
+	* events.c (reinit_vars_of_events): Extracted from vars_of_events.
+
+	* eval.c: The subr is _not_ a lcrecord.
+
+	* emacs.c (main_1): Call vars_of_specifier early before any
+ 	specifier creation (e.g in vars_of_glyphs, at least).  Remove the
+ 	useless reinit_image_instantiator_format*.  Add
+ 	reinit_vars_of_events and reinit_complex_vars_of_minibuf.  Add
+ 	calls to lstream_type_create* and process_type_create*.
+
+	* elhash.c: Dump Vall_weak_hash_tables correctly.
+
+	* data.c: Dump Vall_weak_lists correctly.
+
+	* console.c: Fix description.
+
+	* console-stream.c (init_console_stream): Do initializations
+ 	correctly in the pdump case.
+
+	* chartab.c: Fix description.  Dump Vall_syntax_tables correctly.
+	(Fcopy_char_table): Link into Vall_syntax_tables.
+
+	* alloc.c (pdump_wire_list): Added.
+	(Fgarbage_collect): Fix loop in stats couting missing the last
+ 	lrecord type.
+	(pdump_register_sub): Added XD_LO_LINK.
+	(pdump_dump_data): Ditto.  Fixed XD_LO_RESET_NIL forgttting the
+ 	counter.
+	(pdump_reloc_one): Ditto.
+	(pdump_scan_by_alignement): Use last_lrecord_type_index_assigned
+ 	instead of 256.
+	(pdump_dump_wired): Added lists.
+	(pdump): Use last_lrecord_type_index_assigned instead of 256.
+  	Dump last_lrecord_type_index_assigned value.  Fix minor bugs.
+
+1999-10-07  Andy Piper  <andy@xemacs.org>
+
+	* glyphs-msw.c (mswindows_finalize_image_instance): zero out
+ 	bitmap slices.
+
+	* glyphs-x.c (x_finalize_image_instance): fix FMW problem.
+
+1999-10-06  Andy Piper  <andy@xemacs.org>
+
+	* elhash.c (resize_hash_table): Correct reference to lrecord_header.
+
+1999-10-06  Damon Lipparelli  <lipp@primus.com>
+
+	* elhash.h: forward declare Lisp_Hash_Table.
+
+1999-10-06  Andy Piper  <andy@xemacs.org>
+
+	* glyphs.c (Fset_image_instance_property): mark glyphs as dirty
+ 	after setting an image instance property.
+
+1999-10-05  Andy Piper  <andy@xemacs.org>
+
+	* gutter.c (update_frame_gutters): output gutters if
+ 	windows_changed is set. This is the only way of catching changes
+ 	in selected window which obviously can affect the specifiers.
+
+	* redisplay.c: new state flags, subwindows_state_changed and
+ 	subwindows_state_changed set.
+	(redisplay_window): use them.
+	(redisplay_device): ditto.
+	(redisplay_without_hooks): ditto.
+	(redisplay_frame): ditto. Reset subwindow cachels if
+ 	subwindows_changed is set.
+	(redisplay_window): call mark_glyph_cachels_as_clean after
+ 	redisplaying.
+
+	* redisplay-x.c (x_output_x_pixmap): select correct
+ 	pixmap image for display depending on the currently selected
+ 	slice.
+
+	* redisplay-output.c (compare_runes): check dirtiness when
+ 	checking RUNE_DGLYPH runes.
+	(compare_display_blocks): relax invalidation of display blocks
+ 	since we can now detect whether individual glyphs have changed or
+ 	not.
+
+	* redisplay-msw.c (mswindows_output_dibitmap): select correct
+ 	bitmap image for display depending on the currently selected
+ 	slice.
+
+	* glyphs.h (struct Lisp_Image_Instance): add a dirty flag.
+	(IMAGE_INSTANCE_DIRTYP): new macro.
+	(XIMAGE_INSTANCE_DIRTYP): ditto.
+	(MARK_IMAGE_INSTANCE_CHANGED): ditto.
+	(GLYPH_DIRTYP): ditto.
+	(XGLYPH_DIRTYP): ditto.
+	(MARK_GLYPH_CHANGED): ditto.
+	(GLYPH_CACHEL_DIRTYP): ditto.
+	(struct glyph_cachel): add a dirty flag.
+
+	* glyphs.c (update_frame_subwindows): Don't update on
+ 	glyphs_changed.
+	(glyph_animated_timeout_mapper): new function. Map over the
+ 	instance cache lookinng for animated images to update.
+	(Fglyph_animated_timeout_handler): new function. Lisp callback for
+ 	handling animated image timeout events.
+	(disable_glyph_animated_timeout): new function. Add the animated
+ 	image timeout.
+	(disable_glyph_animated_timeout): new function. Remove the
+ 	animated image timeout.
+	(syms_of_glyphs): initialize Qglyph_animated_timeout_handler and
+ 	friends.
+	(vars_of_glyphs): initialize Vglyph_animated_ticker.
+	(image_instance_equal): add the currently displayed slice.
+	(image_instance_hash): ditto.
+	(allocate_glyph): initialize dirty flag.
+	(glyph_width): rename glyph -> glyph_or_image.
+	(glyph_height_internal): ditto.
+	(glyph_dirty_p): new function. Determine whether the image
+ 	instance in the domain and/or glyph is dirty.
+	(set_glyph_dirty_p): set the dirtiness.
+	(update_glyph_cachel_data): take dirtiness into account. Pass the
+ 	image instance we are interested in to glyph_width and friends.
+	(get_glyph_cachel_index): make non-static. Always call
+ 	update_glyph_cachel_data.
+	(mark_glyph_cachels_as_not_updated): meaningless formatting
+ 	change.
+	(mark_glyph_cachels_as_clean): new function. Clean dirtiness from
+ 	glyph cachels.
+
+	* glyphs-x.h (struct x_image_instance_data): change
+	pixmap to a list of pixmaps.
+	(IMAGE_INSTANCE_X_PIXMAP_SLICE): new macro.
+	(IMAGE_INSTANCE_X_PIXMAP_SLICES): ditto.
+	(XIMAGE_INSTANCE_X_PIXMAP_SLICE): ditto.
+	(XIMAGE_INSTANCE_X_PIXMAP_SLICES): ditto.
+
+	* glyphs-x.c (x_finalize_image_instance): make sure multi pixmap
+ 	images get deleted properly.
+	(init_image_instance_from_x_image): add slices paramater and use
+ 	it to initialize x_image_instance_data correctly.
+	(image_instance_add_x_image): new function. Add new pixmaps to our
+ 	set of instantiated pixmaps for an image. Used by animated images.
+	(x_init_image_instance_from_eimage): add a slices
+ 	parameter. Instantiate all images from the eimage.
+	(x_xpm_instantiate): update use of
+ 	init_image_instance_from_x_image.
+	(init_image_instance_from_xbm_inline): ditto.
+	(x_initialize_pixmap_image_instance): add slices paramater and use
+ 	it to allocate x_image_instance_data correctly.
+
+	* glyphs-msw.h (struct mswindows_image_instance_data): change
+ 	bitmap to a list of bitmaps.
+	(IMAGE_INSTANCE_MSWINDOWS_BITMAP_SLICE): new macro.
+	(IMAGE_INSTANCE_MSWINDOWS_BITMAP_SLICES): ditto.
+	(XIMAGE_INSTANCE_MSWINDOWS_BITMAP_SLICE): ditto.
+	(XIMAGE_INSTANCE_MSWINDOWS_BITMAP_SLICES): ditto.
+
+	* glyphs-msw.c (init_image_instance_from_dibitmap): add slices
+ 	paramater and use it to initialize mswindows_image_instance_data
+ 	correctly.
+	(image_instance_add_dibitmap): new function. Add new bitmaps to
+ 	our set of instantiated bitmaps for an image. Used by animated
+ 	images.
+	(mswindows_init_image_instance_from_eimage): add a slices
+ 	parameter. Instantiate all images from the eimage.
+	(mswindows_xpm_instantiate): update use of
+ 	init_image_instance_from_dibitmap.
+	(bmp_instantiate): ditto.
+	(init_image_instance_from_xbm_inline): ditto.
+	(mswindows_finalize_image_instance): make sure all the bitmap
+ 	slices get deleted.
+	(mswindows_initialize_dibitmap_image_instance): add slices
+ 	paramater and use it to allocate mswindows_image_instance_data
+ 	correctly.
+
+	* glyphs-eimage.c (jpeg_instantiate): give extra paramter to
+ 	init_image_instance_from_eimage.
+	(png_instantiate): ditto.
+	(tiff_instantiate): ditto.
+	(gif_instantiate): allocate bitmaps for all gif slices not just
+ 	the first one.
+
+	* device.h (struct device): add subwindows_state_changed flag.
+	(MARK_DEVICE_SUBWINDOWS_STATE_CHANGED): new macro.
+	(MARK_DEVICE_FRAMES_GLYPHS_CHANGED): ditto.
+
+	* console.h (struct console_methods): add a slice parameter to
+ 	init_image_instance_from_eimage_method.
+
+	* redisplay.c (create_string_text_block): Allow buffer to be nil
+ 	without crashing.
+
+1999-09-24  Andy Piper  <andy@xemacs.org>
+
+	* glyphs-x.c: only include gui-x.h if we are building with
+ 	widgets.
+
+	* gui-x.c (vars_of_gui_x): only set popup_up_p if we have popups.
+
+1999-09-28  Lee Kindness <lkindness@csl.co.uk>
+
+	* objects-x.c (allocate_nearest_color): will return 0 (failure)
+ 	when the colormap is full and the color it has computed to be the
+ 	'nearest' has been allocated read/write.
+
+1999-10-02  Olivier Galibert  <galibert@pobox.com>
+
+	* search.c (reinit_vars_of_search):   Reinit   the  search   cache
+ 	correctly.
+
+	* elhash.h:     Make    the    description    visible.     Declare
+ 	resize_hash_table.
+
+	* elhash.c  (resize_hash_table): Extracted from enlarge_hash_table
+ 	to generalize the hash table reorganization.
+	(reorganize_hash_table): Added.
+	(enlarge_hash_table): Uses resize_has_table.
+
+	* casetab.c (complex_vars_of_casetab):  staticpro  the mule mirror
+ 	tables.
+
+	* alloc.c:   Add  correct  management  of   blocks of  structures.
+  	Reorganize hash tables at reload since  the hash values can change
+ 	with the pointers.
+
+1999-10-01  Olivier Galibert  <galibert@pobox.com>
+
+	* lisp.h: Add pdump_wire declaration
+
+	* elhash.c (vars_of_elhash): Wire Vall_weak_hash_tables.
+	* symbols.c (init_symbols_once_early): Wire Qnil and Qunbound.
+
+	* alloc.c (pdump_wire): Added..
+	(pdump_load): Support it.
+	(pdump): Support it
+
+	* glyphs-msw.c
+ 	(reinit_image_instantiator_format_create_glyphs_mswindows): Fix
+ 	macro calls.
+
+1999-09-28  Olivier Galibert  <galibert@pobox.com>
+
+	* symsinit.h: Added lots of prototypes.
+
+	* symeval.h: Added defsymbol_nodump declaration.
+
+	* symbols.c (find_symbol_value): Lame attempt at making the
+ 	startup go further.
+	(defsymbol_nodump): Added.
+
+	* mule-charset.c: Collapsed global lisp objects arrays in one
+ 	dumpable structure.
+
+	* lrecord.h: Added some flags.
+
+	* lisp.h: Added dumped flag to dynarrs.  Added dumpstruct
+ 	declaration.
+
+	* glyphs.h (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT_NO_SYM): Don't
+ 	staticpro dynamic variables.
+
+	* glyphs.c (reinit_specifier_type_create_image): Added.
+	(image_instantiator_format_create): Dump image instantiator format
+ 	dynarr.
+	(reinit_image_instantiator_format_create): Added.
+
+	* emacs.c (main_1): Added reinits calls.
+
+	* dynarr.c: Protect dumped dynarrays from going berzek in free or
+ 	realloc.
+
+	* specifier.h (INITIALIZE_SPECIFIER_TYPE): Don't staticpro dynamic
+ 	variables.
+	* specifier.c (specifier_type_create): Dump the specifier type
+ 	dynarr.
+	(reinit_specifier_type_create): Added.
+	* console.h (INITIALIZE_CONSOLE_TYPE): Don't staticpro dynamic
+ 	variables.
+	* console.c (console_type_create): Dump the console type dynarr.
+	(reinit_vars_of_console): Extracted from vars_of_console.
+	(reinit_complex_vars_of_console): Extracted from
+ 	complex_vars_of_console
+	* window.c (reinit_vars_of_window): Extracted from vars_of_window.
+	* toolbar.c (reinit_specifier_type_create_toolbar): Added.
+	* search.c (reinit_vars_of_search): Extracted from vars_of_search.
+	* objects.c (reinit_specifier_type_create_objects): Added.
+	(reinit_vars_of_objects): Extracted from vars_of_objects.
+	* lstream.c (reinit_vars_of_lstream): Extracted from
+ 	vars_of_lstream.
+	* lread.c (reinit_vars_of_lread): Extracted from vars_of_lread.
+	* gutter.c (reinit_specifier_type_create_gutter): Added.
+	* glyphs-x.c (reinit_image_instantiator_format_create_glyphs_x):
+ 	Added.
+	* glyphs-widget.c
+ 	(reinit_image_instantiator_format_create_glyphs_widget): Added
+	* glyphs-msw.c
+ 	(reinit_image_instantiator_format_create_glyphs_mswindows): Added.
+	* glyphs-eimage.c
+ 	(reinit_image_instantiator_format_create_glyphs_eimage): Added.
+	* event-stream.c (reinit_vars_of_event_stream): Extracted from
+ 	vars_of_event_stream
+	* eval.c (reinit_vars_of_eval): Extracted from vars_of_eval.
+	* device.c (reinit_vars_of_device): Extracted from vars_of_device.
+	* console-x.c (reinit_console_type_create_x): Added.
+	* console-tty.c (reinit_console_type_create_tty): Added
+	* console-stream.c (reinit_console_type_create_stream): Added.
+	(init_console_stream): If PDUMP, always reinitialise basic
+ 	devices.
+	* console-msw.c (reinit_console_type_create_mswindows): Added.
+	* buffer.c (reinit_vars_of_buffer): Extracted from
+ 	init_vars_of_buffer.
+	(reinit_complex_vars_of_buffer): Extracted from
+ 	complex_vars_of_buffer
+
+	* alloc.c: Further with the portable dumping, the revenge.
+	(dumpstruct): Added.
+	(reinit_alloc_once_early): Extracted from init_alloc_once_early.
+
+	* specifier.c (sizeof_specifier): Correct size computation.
+	(make_specifier_internal): Ditto.
+
+1999-09-27  Olivier Galibert  <galibert@pobox.com>
+
+	* alloc.c: Further with the portable dumping.
+
+1999-09-27  Martin Buchholz  <martin@xemacs.org>
+
+	* glyphs-x.c (update_widget_face): Remove bogus cast
+
+	* data.c (sign_extent_lisp):
+	* data.c (check_int_range):
+	* data.c (Faref):
+	* data.c (Faset):
+	* data.c (number_char_or_marker_to_int):
+	* data.c (number_char_or_marker_to_double):
+	* data.c (Frem):
+	* data.c (Fmod):
+	* extents.c (print_extent_1):
+	* fns.c (print_bit_vector):
+	* fns.c (Flength):
+	* fns.c (Fsafe_length):
+	* fns.c (copy_list):
+	* fns.c (Fsubseq):
+	* fns.c (Felt):
+	* fns.c (Flast):
+	* fns.c (Fnbutlast):
+	* insdel.h:
+	* marker.c (print_marker):
+	* syntax.h:
+	* bytecode.c (bytecode_arithcompare):
+	* bytecode.c (bytecode_arithop):
+	* lisp.h:
+	* lisp.h (EXTERNAL_LIST_LOOP_DELETE_IF):
+	* lisp.h (TRUE_LIST_P):
+	* lisp.h (CHECK_TRUE_LIST):
+	* lisp.h (bit_vector_length):
+	* lisp.h (GCPRO4): Make consistent.
+	* lisp.h (NGCPRO4): Make consistent.
+	* lisp.h (NNGCPRO4): Make consistent.
+	* alloc.c (Fmake_list):
+	* alloc.c (Fmake_string):
+	Use proper 64-bit types, e.g. EMACS_INT or size_t instead of int.
+	This should make all arithmetic 64-bit clean.
+
+	Use %ld with (long) casts in print statements of types with sizes
+	possibly larger than int.
+
+	Following functions had mismatched prototypes!!:
+	do_marker_adjustment(), fixup_internal_substring(), scan_lists(),
+	char_quoted(), make_string_from_buffer(),
+	make_string_from_buffer_no_extents()
+
+	The types of Bufpos, Bytind, Memind, Bytecount, Charcount,
+	Extcount are all now EMACS_INT.  I hope to see the day when I can
+	create a buffer with more than INT_MAX characters, without having
+	XEmacs slow down to a crawl.  I also hope to be able to create a
+	list with more than INT_MAX cons cells.
+
+	* redisplay.c (decode_mode_spec): 
+	The %p and %P specs in the mode line were not correct for buffers
+	larger than MAX_INT/100!  The %p spec was off by .5% even for
+	small buffers!
+
+1999-09-27  Martin Buchholz  <martin@xemacs.org>
+
+	* cmdloop.c (num_input_keys):
+	* print.c (debug_temp):
+	* emacs.c (Vinfo_directory):
+	Delete unused variables 
+
+	* console-x.h (x_interline_space):  Mark as unimplemented.
+	* redisplay-x.c (x_interline_space):  Mark as unimplemented.
+
+	* event-Xt.c (pending_timeouts):
+	* linuxplay.c (linuxplay_sndbuf):
+	* profile.c (QS*):
+	* search.c (searchbufs):
+	* specifier.c (specifier_type_entry_dynarr):
+	* undo.c (pending_boundary):
+	* event-stream.c (the_low_level_timeout_blocktype):
+	* extents.c (gap_array_marker_freelist):
+	* extents.c (extent_list_marker_freelist):
+	* print.c (being_printed):
+	* print.c (alternate_do_pointer):
+	* alloc.c (first_string_chars_block):
+	* alloc.c (current_string_chars_block):
+	* emacs.c (initial_argv):
+	* emacs.c (initial_argc):
+	* eval.c (lisp_eval_depth):
+	* free-hook.c (pointer_table):
+	* free-hook.c (free_queue):
+	* free-hook.c (current_free):
+	* free-hook.c (strict_free_check):
+	* redisplay.c (formatted_string_emchar_dynarr):
+	* redisplay.c (formatted_string_display_line):
+	* redisplay.c (formatted_string_extent_dynarr):
+	* redisplay.c (formatted_string_extent_start_dynarr):
+	* redisplay.c (formatted_string_extent_end_dynarr):
+	* redisplay.c (updating_line_start_cache):
+	* redisplay.c (last_display_warning_tick):
+	* redisplay.c (display_warning_tick):
+	* redisplay.c (internal_cache):
+	* window.c (Vwindow_configuration_free_list):
+	Make static.
+
+	* redisplay.c (Vinitial_window_system):  Make CONST.
+
+1999-09-24  Martin Buchholz  <martin@xemacs.org>
+
+	* redisplay-tty.c (term_get_fkeys_1): Minor aesthetic improvements.
+
+	* doprnt.c (get_doprnt_args): Use int, not short, with va_arg.
+
+1999-09-24  Andy Piper  <andy@xemacs.org>
+
+	* redisplay-output.c (output_display_line): only clear the borders
+ 	if we are not displaying the gutter.
+
+1999-09-24  Jan Vroonhof <vroonhof@math.ethz.ch>
+
+	* frame-x.c (x_any_window_to_frame): Let Xt find the widget and
+ 	then use x_any_widget_or_parent_to_frame().
+	(x_find_frame_for_window): remove special cases.
+
+1999-09-24  Andy Piper  <andy@xemacs.org>
+
+	* scrollbar-x.c (x_window_is_scrollbar): deleted.
+	* scrollbar-x.h: ditto.
+	
+1999-09-23  Martin Buchholz  <martin@xemacs.org>
+
+	* alloc.c (this_marks_a_marked_record): Remove.
+
+	* buffer.c (mark_buffer):
+	* buffer.c (nuke_all_buffer_slots):
+	* console.c (mark_console):
+	* console.c (nuke_all_console_slots):
+	* frame.c (mark_frame):
+	* frame.c (nuke_all_frame_slots):
+	Treat MARKED_SLOT() macros consistently.
+
+	* device.h (error_check_device_type):
+	* faces.c (face_getprop):
+	* fileio.c (DRIVE_LETTER):
+	* filelock.c (lock_file_1):
+	* frame-x.c (x_create_widgets):
+	* frame.h (error_check_frame_type):
+	* keymap.c (print_keymap):
+	* keymap.c (Fkey_description):
+	* keymap.c (where_is_recursive_mapper):
+	* mule-charset.h (CHARSET_LEADING_BYTE):
+	* objects-msw.c (mswindows_color_instance_hash):
+	* objects.c (color_instance_equal):
+	* objects.h (struct color_specifier):
+	* objects.h (struct font_specifier):
+	* objects.h (struct face_boolean_specifier):
+	* opaque.h (get_opaque_ptr):
+	* opaque.h (set_opaque_ptr):
+	* process-unix.c (set_socket_nonblocking_maybe):
+	* specifier.h (SPECIFIER_TYPE_P):
+	* symbols.c (store_symval_forwarding):
+	* syssignal.h (EMACS_KILLPG):
+	* terminfo.c (emacs_tparam):
+	* glyphs.c (glyph_putprop):
+	* glyphs.c (glyph_remprop):
+	* glyphs.c (Fimage_instance_subwindow_id):
+	* window.c (mark_window):
+	* window.c (mark_window_config):
+	* window.c (Fset_window_configuration):
+	* window.c (save_window_save):
+	* eval.c (Fuser_variable_p):
+	* eval.c (Fcommand_execute):
+	* eval.c (Feval):
+	* eval.c (Ffuncall):
+	* lisp.h (XPNTR):
+	* lisp.h (INT_OR_FLOATP):
+	* lisp.h (GC_INT_OR_FLOATP):
+	* lisp.h (XFLOATINT):
+	* lisp.h (IS_ANY_SEP):
+	* mule-ccl.c (Fccl_execute):
+	* mule-ccl.c (Fccl_execute_on_string):
+	* redisplay-x.c (x_output_string):
+	Remove redundant extra parentheses.
+
+1999-09-22  Martin Buchholz  <martin@xemacs.org>
+
+	* chartab.c (word_boundary_p): Add prototype for warning avoidance.
+	* eval.c (PRIMITIVE_FUNCALL): ANSIfy
+	* free-hook.c (fun_ptr): ANSIfy
+	* getloadavg.c: Remove declaration for errno.
+	* gui.c (allocate_gui_item): ANSIfy
+	* gui.h (allocate_gui_item): ANSIfy
+	* mule-ccl.c (resolve_symbol_ccl_program): Make static
+	* realpath.c: Remove K&R support.
+	* redisplay-x.c (x_output_display_block): Don't shadow previous local
+	* glyphs-widget.c (layout_instantiate):  Don't shadow previous local
+	* gutter.c (get_gutter_coords): Make static.
+	* lread.c (locate_file_map_suffixes): Make static.
+	* ralloc.c (relinquish): ANSIfy
+	* redisplay.c:
+	* lisp.h:
+	Move prototypes from redisplay.c to lisp.h
+
+1999-09-22  Martin Buchholz  <martin@xemacs.org>
+
+	* glyphs-x.c (x_widget_set_property):
+	- Remove unnecessary initialization.
+	- Use char*, not Bufbyte *, with GET_C_STRING_OS_DATA_ALLOCA
+	* glyphs-x.c (x_widget_instantiate):
+	- Use char*, not Bufbyte *, with GET_C_STRING_OS_DATA_ALLOCA
+	* unexelf.c (unexec):
+	Add cast for C++ compilability.
+	* redisplay.h:
+	Fix a typo.
+	* ralloc.c (r_alloc_reinit):
+	SET_FUN_PTR was broken wrt ANSI aliasing!
+	To compensate, use __typeof__ when using gcc, else live with
+	possible (but rare) warnings.
+	* ralloc.c (init_ralloc):
+	Ditto
+	* ralloc.c: Use the real dlmalloc prototype for __morecore.
+	* lread.c (locate_file_map_suffixes):
+	* input-method-xlib.c (XIM_init_frame):
+	- Xlib functions should use XPointer, not XtPointer.
+	* input-method-xlib.c (XIM_delete_frame):
+	- Xlib functions should use XPointer, not XtPointer.
+	* input-method-xlib.c (IMDestroyCallback):
+	- Simplify.
+	- XFRAME (obj) can never be NULL, so don't test for it.
+	* gutter.h:
+	Add GUTTER_POS_LOOP for iterating over all gutter_pos'es
+	* gutter.c (SET_GUTTER_WAS_VISIBLE_FLAG):
+	Run c-backslash-region on macro body.
+	* gutter.c (gutter_was_visible):
+	Remove redundant parens - this is not a macro.
+	* gutter.c (redraw_exposed_gutters):
+	Use GUTTER_POS_LOOP.
+	* gutter.c (gutter_specs_changed):
+	Use GUTTER_POS_LOOP.
+	* gutter.c (gutter_geometry_changed_in_window):
+	Use GUTTER_POS_LOOP.
+	* gutter.c (update_frame_gutters):
+	Use GUTTER_POS_LOOP.
+	* gutter.c (init_frame_gutters):
+	Use GUTTER_POS_LOOP.
+	* file-coding.c (determine_real_coding_system):
+	Fix C++ compile error.
+	* emodules.c (find_make_module):
+	Cast return value from xrealloc
+	* emacs.c (Fkill_emacs):
+	Use __typeof__, when available.
+	* emacs.c (voodoo_free_hook):
+	Use __typeof__, when available.
+	(Unfortunately, the type of __free_hook is glibc-version-dependent)
+	* dired.c (user_cache): Use Bufbyte *, not char *
+	* dired.c (Fuser_name_all_completions): Ditto.
+
+1999-09-22  Andy Piper  <andy@xemacs.org>
+
+	* redisplay.c (redisplay_frame): reset the gutter display lines
+ 	when we reset the subwindows.
+
+	* gutter.c (reset_gutter_display_lines): new function.
+
+	* window.c (Flast_nonminibuf_window): new function equivalent to
+ 	FRAME_LAST_NONMINIBUF_WINDOW ().
+	(syms_of_window): declare it.
+
+	* redisplay.c (create_string_text_block): don't add bogus eol
+ 	markers to gutter display lines.
+
+	* glyphs.c (reset_subwindow_cachels): make sure we unmap
+ 	subwindows using unmap_subwindow so that expose events get
+ 	registered correctly.
+
+	* window.c (window_scroll): use Vwindow_pixel_scroll_increment to
+ 	determine how much to scroll the window.
+	(vars_of_window): Vwindow_pixel_scroll_increment is a new
+ 	variable.
+
+1999-09-20  Robert Pluim  <rpluim@nortelnetworks.com>
+
+	* glyphs-x.c (update_widget_face): Guard fontList declaration for
+	non-motif uses.
+
+1999-09-20  Andy Piper  <andy@xemacs.org>
+
+	* glyphs-msw.c (mswindows_update_subwindow): update faces.
+
+1999-09-19  Andy Piper  <andy@xemacs.org>
+
+	* glyphs.c (update_frame_subwindows): update if faces have
+ 	changed.
+
+	* glyphs-x.c (x_widget_instantiate): create the clip widget using
+ 	lwlib rather than directly.
+	(x_finalize_image_instance): delete the clip widget using lwlib.
+	(x_update_subwindow): update widget faces.
+	(update_widget_face): new function for updating the face
+ 	properties of a widget.
+	(x_widget_set_property): update widget faces.
+
+	* lwlib-Xlw.c (xlw_create_clip_window): new function. We need to
+ 	manage the clip widgets using lwlib so that we can delete them in
+ 	a safe manner.
+
+1999-09-16  Martin Buchholz  <martin@xemacs.org>
+
+	* lisp-union.h:
+	* lisp-disunion.h:
+	Define new, potentially faster INT arithmetic macros
+	INT_PLUS, INT_MINUS, INT_PLUS1, INT_MINUS1
+	* bytecode.c (execute_optimized_function):
+	Use new macros.
+	Fix metering code
+	* bytecode.c (bytecode_negate):
+	Optimize for integer case.
+
+1999-08-29  Andreas Jaeger  <aj@arthur.rhein-neckar.de>
+
+	* m/mips.h: Support for mips-linux: Add !linux around places
+	that are not valid for linux, define TEXT_START, DATA_START,
+	DATA_SEG_BITS.
+
+1999-09-16  Andy Piper  <andy@xemacs.org>
+
+	* redisplay-output.c (redisplay_output_subwindow): clip subwindows
+ 	that don't completely fit on-screen rather than just unmapping
+ 	them.
+
+	* glyphs.h: change signature of map_subwindow.
+
+	* glyphs.c (map_subwindow): add display_glyph_area to the
+ 	signature. make sure the mapped area saved in the subwindow_cachel
+ 	reflects this.
+	(Fforce_subwindow_map): make a no-op. I don't think this does
+ 	anything useful.
+
+	* glyphs-x.h (struct x_subwindow_data): save the Display rather
+ 	than the Screen. Add a clipwindow and clipwidget handle.
+	(IMAGE_INSTANCE_X_CLIPWINDOW): new accessor.
+	(IMAGE_INSTANCE_X_CLIPWIDGET): ditto.
+	(XIMAGE_INSTANCE_X_CLIPWIDGET): ditto.
+	(XIMAGE_INSTANCE_X_CLIPWINDOW): ditto.
+
+	* glyphs-x.c (x_finalize_image_instance): destroy the clipwidget
+ 	as well as the widget itself.
+	(x_unmap_subwindow): unmap the clipwindow and clipwidget rather
+ 	than the widgets and subwindows themselves. move the widget inside
+ 	the clipwidget.
+	(x_subwindow_instantiate): hold onto the Display rather than the
+ 	Screen. allocate a clipwindow to put the subwindow inside.
+	(x_resize_subwindow): use saved Display directly.
+	(x_widget_instantiate): allocate a clipwidget of type EmacsManager
+ 	to put widgets inside.
+
+	* glyphs-widget.c: remove group stuff.
+
+	* glyphs-msw.h (struct mswindows_subwindow_data): new structure to
+ 	hold the clipwindow.
+	(IMAGE_INSTANCE_MSWINDOWS_CLIPWINDOW): new accessor.
+	(XIMAGE_INSTANCE_MSWINDOWS_CLIPWINDOW): ditto.
+
+	* glyphs-msw.c: remove group stuff.
+	(mswindows_finalize_image_instance): destroy clipwindow as well as
+ 	the widget itself.
+	(mswindows_unmap_subwindow): unmap the clipwindow rather than the
+ 	widget.
+	(mswindows_map_subwindow): ditto. move the widget within the
+ 	clipwindow.
+	(mswindows_subwindow_instantiate): allocate and initialize
+ 	mswindows_subwindow_data. allocate a clipwindow with the subwindow
+ 	as a child.
+	(mswindows_widget_instantiate): ditto.
+	(mswindows_control_wnd_proc): new function that allows us to
+ 	propagate events from the widget to the main windows control loop.
+
+	* device-msw.c (mswindows_init_device): register new widget clip window
+ 	class.
+
+	* console.h (struct console_methods): add display_glyph_area to
+ 	map_window.
+
+	* console-msw.h: declare new window class and wnd proc for
+ 	widgets.
+
+1999-09-14  Martin Buchholz  <martin@xemacs.org>
+
+	* general.c:
+	* eldap.c:
+	Move symbols used only by eldap.c into eldap.c as statics.
+
+1999-09-09  Martin Buchholz  <martin@xemacs.org>
+
+	* window.c (syms_of_window):
+	* symbols.c (syms_of_symbols):
+	* redisplay.c (syms_of_redisplay):
+	* print.c (syms_of_print):
+	* lisp.h:
+	* intl.c (syms_of_intl):
+	* general.c (syms_of_general):
+	* frame.c (syms_of_frame):
+	* fileio.c (syms_of_fileio):
+	* file-coding.h:
+	* file-coding.c (syms_of_file_coding):
+	* extents.c (syms_of_extents):
+	* event-stream.c (syms_of_event_stream):
+	* event-stream.c (Fnext_event):
+	* device.c (syms_of_device):
+	* data.c (syms_of_data):
+	* casetab.c (syms_of_casetab):
+	* casetab.c (check_case_table):
+	* callint.c (syms_of_callint):
+	* buffer.c (syms_of_buffer):
+	Delete unused C symbols:
+	Qbuffer_file_name, Qbuffer_undo_list, Quser_variable_p,
+	Qcurrent_prefix_arg, Qtranslate_table, Qkeywordp,
+	Qnumber_or_marker_p, Qcons, Qkeyword, Qignore, Qdelete_device,
+	Qcommand_execute, Qglyph_invisible,
+	Qbuffer_file_coding_system, Qfile_name_handler_alist,
+	Qframe_x_p, Qframe_tty_p, Qblack, Qkeyboard, Qmenubar, Qpath,
+	Qvector, Qwhite, Qcase, Qdomain, Qalternate_debugging_output,
+	Qprint_escape_newlines, Qprint_readably, Qfloat_output_format,
+	Qwindow_scroll_functions, Qfboundp, Qscroll_up, Qscroll_down
+
+	Rename symbols as required by the CHECK_RECORD macro:
+	- Qcase_table_p to Qcase_tablep
+	- Qcoding_system_p to Qcoding_systemp
+
+	* debug.h:
+	* debug.c (syms_of_debug):
+	Make debug.c's internal Lisp_Objects static.
+
+	* events.c (vars_of_events):
+	* events.c (syms_of_events):
+	Use regular old defsymbol instead of KEYSYM + staticpro().
+
+	* select-x.c (CHECK_CUTBUFFER):
+	Rewrite in accordance with coding standards.
+
+	* keymap.c (syms_of_keymap):
+	Use SPC in the same way as RET, TAB, etc.
+
+1999-08-27  Jan Vroonhof  <vroonhof@math.ethz.ch>
+
+	* xemacs-20/src/menubar-x.c (make_dummy_xbutton_event): Don't add
+	offset twice if HAVE_WMCOMMAND is defined.
+
+1999-09-13 Mike McEwan <mike@lotusland.demon.co.uk>
+
+	* redisplay-x.c (x_output_vertical_divider): make sure
+ 	shadow_thickness is positive.
+
+1999-09-10 Julian Back <jback@rudd.compulink.co.uk>
+
+	* process-nt.c (nt_create_process): fixup to cope with
+ 	Vprocess_environment.
+
+1999-09-02  Andy Piper  <andy@xemacs.org>
+
+	* redisplay-output.c (redisplay_output_layout): call output
+ 	routines with clear_clip false. output layout borders with text
+ 	correctly.
+
+	* redisplay-msw.c (mswindows_output_blank): call output routines
+ 	with clear_clip true.
+	(mswindows_output_string): ditto.
+	(mswindows_output_display_block): ditto.
+
+	* redisplay-x.c (x_output_display_block): call output routines
+ 	with clear_clip true.
+
+	* redisplay.h: fix output routines for clear_clip parameter.
+
+	* redisplay-output.c (redisplay_output_layout): cope with glyphs
+ 	in the border.
+
+	* glyphs-widget.c (layout_instantiate): deal with border glyphs.
+	(check_valid_glyph_or_instantiator): renamed from
+ 	check_valid_glyph_or_image.
+	(check_valid_border): allow glyphs or their instantiators.
+	(check_valid_glyph_or_instantiator_list): renamed from
+ 	check_valid_glyph_or_image_list,
+	(glyph_instantiator_to_glyph): new function. make sure a glyph is
+ 	a glyph and not an instantiator.
+	(substitute_keyword_value): new function. replace a keyword value
+ 	with a new one.
+
+1999-09-01  Andy Piper  <andy@xemacs.org>
+
+	* glyphs.c (string_set_property): new function to set the data of
+ 	a string.
+	(image_instantiator_format_create): use it.
+
+1999-09-07  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* fns.c (Fmapc): Rename back to Fmapc_internal.
+
+1999-07-30  Gleb Arshinov  <gleb@cs.stanford.edu>
+
+	* ntheap.h: CONST (semantically constant) name field of file_data
+ 	struct
+
+	* unexnt.c (open_output_file): match function definition with
+ 	function declaration
+
+	* editfns.c: #include "sysfile.h" for getcwd() prototype
+
+	* gif_io.c:  #include "sysfile.h" for close() prototype
+
+1999-09-02  Martin Buchholz  <martin@xemacs.org>
+
+	* elhash.c:
+	* elhash.h:
+	Change the :type keyword to :weakness, for compatibility with the
+	GNU Emacs 20.5 hash table implementation.
+	Keep (but don't document) the :type keyword for compatibility.
+	Obsolete function hash-table-type
+	General cleanup.
+	Define function sxhash for compatibility with Common Lisp and GNU Emacs.
+
+1999-09-01  Martin Buchholz  <martin@xemacs.org>
+
+	* floatfns.c (arith_error):
+	* floatfns.c (range_error):
+	* floatfns.c (range_error2):
+	* floatfns.c (domain_error):
+	* floatfns.c (domain_error2):
+	* lrecord.h (LRECORDP):
+	* console-x.h (X_ERROR_OCCURRED):
+	* console-x.h (HANDLING_X_ERROR):
+	* chartab.c (CATEGORYP):
+	* buffer.h (XCHAR_OR_CHAR_INT):
+	Remove redundant and confusing parentheses.
+
+	* redisplay-output.c (redisplay_clear_to_window_end):
+	Remove redundant initialization.
+
+	* redisplay.h:
+	* redisplay-msw.c:
+	* redisplay-x.c:
+	Move declarations of bevel_modeline() into redisplay.h.
+
+1999-08-30  Olivier Galibert  <galibert@pobox.com>
+
+	* lisp.h: Add staticpro_nodump for undumped staticpro-ing.
+	* alloc.c: Add staticpro_nodump for undumped staticpro-ing.  Add
+		  alignment information for dumped data.  Enhance
+		  descriptions.  Phase out Vterminal_* variables while
+		  dumping.
+	* lrecord.h: Add chained descriptions and automagically-reset
+		  lisp_objects to the description system.
+
+	* console-stream.h: Declare the Vterminal_* variables.
+
+	* buffer.c: Don't dump Vbuffer_alist, Vbuffer_defaults and
+		  Vbuffer_local_symbols.
+	* console.c: Don't dump Vconsole_list, Vconsole_defaults and
+		  Vconsole_local_symbols.
+	* eval.c: Don't dump Qunbound_suspended_errors_tag.
+	* lread.c: Don't dump Vread_buffer_stream.
+	* lstream.c: Don't dump Vlstream_free_list[].
+	* search.c: Don't dump last_thing_searched.
+	* window.c: Don't dump minibuf_window and
+		  Vwindow_configuration_free_list[].
+
+	* faces.c: Add face description.
+	* fns.c: Add bit_vector description.
+	* glyphs.c: Add image specifier description.
+	* objects.c: Add color, face and face boolean specifiers descriptions.
+	* opaque.c: Add opaque description.  Don't dump Vopaque_ptr_free_list.
+	* rangetab.c: Add range table description.
+	* specifier.c: Add specifier and specifier methods description.
+	* specifier.h: Add specifier extra description support.
+
+	* symbols.c: Fix symbol_value_buffer_local_description.
+
+	* gdbinit (Lisp): Add opaque_ptr, remove opaque_list.
+
+1999-09-02  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* extents.c (extent_remprop): Get extent's plist address
+ 	correctly.
+
+1999-08-31  Andy Piper  <andy@xemacs.org>
+
+	* xmu.h: define Xmu/Converters.h things.
+
+1999-08-31  Andy Piper  <andy@xemacs.org>
+
+	* opaque.c (equal_opaque_ptr): define.
+	(hash_opaque_ptr): define.
+
+	* xmu.h: define Xmu/Misc.h things.
+
+1999-08-17  MORIOKA Tomohiko  <tomo@etl.go.jp>
+
+	* file-coding.c (determine_real_coding_system): Treat `coding:'
+	cookie.
+
+1999-08-16  MORIOKA Tomohiko  <tomo@etl.go.jp>
+
+	* file-coding.c (struct decoding_stream): New member `counter'.
+	(reset_decoding_stream): Initialize `counter'.
+	(decode_coding_ucs4): Use `counter'.
+	(decode_coding_utf8): Likewise.
+
+1999-08-31  Andy Piper  <andy@xemacs.org>
+
+	* redisplay-output.c (redisplay_normalize_glyph_area): make sure
+ 	the clip offset doesn't exceed the height we have available to
+ 	show.
+
+	* window.h (struct window): add top_yoffset and left_xoffset for
+ 	pixel scrolling.
+	(WINDOW_TEXT_TOP_CLIP): new macro.
+
+	* window.c (window_scroll): add behaviour for pixel-scrolling of
+ 	tall lines.
+
+	* redisplay.h (struct display_line): add top_clip.
+	(DISPLAY_LINE_HEIGHT): adjust for top_clip.
+	(DISPLAY_LINE_YPOS): ditto.
+
+	* redisplay.c (position_redisplay_data_type): add
+ 	start_col_xoffset to prepare for pixel-based h-scrolling.
+	(WINDOW_SCROLLED): new macro.
+	(next_tab_position): use it.
+	(add_glyph_rune): use new hscoll vars.
+	(create_text_block): ditto.
+	(generate_displayable_area): adjust off-by-one error.
+	(regenerate_window): take top_clip into account.
+	(regenerate_window_extents_only_changed): ditto.
+	(regenerate_window_incrementally): ditto.
+
+	* redisplay-x.c (x_output_display_block): use DISPLAY_LINE_YPOS,
+ 	DISPLAY_LINE_HEIGHT and DISPLAY_LINE_YEND macros.
+	(x_output_string): ditto.
+	(x_output_blank): ditto.
+	(x_output_hline): ditto.
+	(x_output_eol_cursor): ditto.
+
+	* redisplay-output.c (output_display_line): allow for
+ 	top_clip. use DISPLAY_LINE_YPOS, DISPLAY_LINE_HEIGHT and
+ 	DISPLAY_LINE_YEND macros.
+	(redisplay_output_layout): output strings in layouts correctly.
+	(redisplay_clear_clipped_region): allow for top_clip.
+	(redisplay_calculate_display_boxes): ditto.
+
+	* redisplay-msw.c (mswindows_output_blank): use DISPLAY_LINE_YPOS,
+ 	DISPLAY_LINE_HEIGHT and DISPLAY_LINE_YEND macros.
+	(mswindows_output_cursor): ditto.
+	(mswindows_output_string): ditto.
+	(mswindows_redraw_exposed_window): ditto.
+	(mswindows_output_display_block): ditto.
+
+	* gutter.c: new specifier type gutter-size.
+	(gutter_size_validate): validate gutter-size specifier.
+	(Fgutter_size_specifier_p): predicate for gutter-size.
+	(Fredisplay_gutter_area): allow the gutter area to be redisplayed
+ 	under user contol, like Fredisplay_echo_area.
+	(syms_of_gutter): add new functions.
+	(specifier_type_create_gutter): add new specifier.
+	(specifier_vars_of_gutter): change specifier types of *-height to
+ 	gutter-size.
+
+	* glyphs.c (glyph_width): make work with image instances.
+
+	* console.h (struct console_methods): change api of output_string.
+
+	* glyphs-x.c (x_map_subwindow): move before mapping as reported by
+ 	Stephen J. Turnbull <turnbull@sk.tsukuba.ac.jp>
+
+1999-08-30  Andy Piper  <andy@xemacs.org>
+
+	* glyphs-x.c (x_finalize_image_instance): X_MASK -> PIXMAP_MASK
+ 	for assignment.
+	(init_image_instance_from_x_image): ditto.
+	(x_xpm_instantiate): ditto.
+	(x_colorize_image_instance): ditto. Reported by Richard Cognot
+ 	<cognot@ensg.u-nancy.fr>
+
+1999-08-29  Andy Piper  <andy@xemacs.org>
+
+	* glyphs-x.c (x_widget_instantiate): move font initialisation so
+ 	that it doesn't get saved in the user defined args.
+	(x_tab_control_instantiate): Set the fg color of the tab's
+ 	children.
+	(x_tab_control_set_property): ditto.
+
+1999-08-27  Damon Lipparelli  <lipp@primus.com>
+
+	* events.h (XTIMEOUT): must preface Lisp_Timeout with ``struct''
+	(XSETTIMEOUT): fixup typo
+
+1999-08-11  Jan Vroonhof  <vroonhof@math.ethz.ch>
+
+	* syntax.c (scan_words): Unified Mule and Non-mule scanning.
+	Word boundary search looks back instead of forward so that it
+	doesn't peek over the limit.
+
+1999-08-20  Olivier Galibert  <galibert@pobox.com>
+
+	* config.h.in: Add PDUMP define.
+	* emacs.c (Fdump_emacs): Hackish, call pdump() if configured in.
+
+	* lrecord.h: Enhance description system.
+	* alloc.c: Fix vector and string description.  Add portable
+	dumper enumeration fonctions.
+
+	* symbols.c:  Fix symbols description.   Add  symbol_value_forward
+	description.
+	* eval.c: Add subr description.
+	* elhash.c (CLEAR_HENTRY):   Clean  value pointer  too.   Fix hash
+	table description.
+	(remhash_1): CLEAR_HENTRY evaluates the parameter two times now.
+
+1999-08-20  Olivier Galibert  <galibert@pobox.com>
+
+	* opaque.c: Kill opaque lists, make  Lisp_Opaque_Ptr a lrecord of
+	its own.
+	* opaque.h: Ditto.
+
+	* eval.c (eval_in_buffer_trapping_errors):
+	(run_hook_trapping_errors):
+	(safe_run_hook_trapping_errors):
+	(call0_trapping_errors):
+	(call1_trapping_errors):
+	(call2_trapping_errors): OPAQUEP  -> OPAQUE_PTRP.  make_opaque_ptr
+	now takes a non-const void *.
+
+1999-08-20  Olivier Galibert  <galibert@pobox.com>
+
+	* opaque.c: Remove make_opaque_long.
+
+	* opaque.h: Remove everything opaque_long related.
+
+	* eval.c (vars_of_eval): Make Qunbound_suspended_errors_tag an
+	opaque_ptr.
+
+	* emacs.c (main_1): Remove make_opaque_long from comment.
+
+1999-08-20  Olivier Galibert  <galibert@pobox.com>
+
+	* event-stream.c (mark_timeout):
+	(print_timeout):
+	(event_stream_generate_wakeup):
+	(event_stream_resignal_wakeup):
+	(event_stream_disable_wakeup):
+	(event_stream_wakeup_pending_p):
+	(vars_of_event_stream): Lisp_Timeout is now a lrecord.
+
+	* events.h (struct Lisp_Timeout): Added.
+
+1999-08-24  Andy Piper  <andy@xemacs.org>
+
+	* console-x.h: declare new pixmap signatures.
+
+1999-08-23  Andy Piper  <andy@xemacs.org>
+
+	* glyphs-x.c (x_update_subwindow): make sure the widget size is
+ 	maintained after an update.
+
+	* event-Xt.c (emacs_Xt_handle_magic_event): use
+ 	find_matching_subwindow to check whether the exposure is totally
+ 	inside a subwindow, if it is then ignore it.
+
+	* glyphs.c (find_matching_subwindow): new function.
+
+	* toolbar-x.c (x_draw_blank_toolbar_button): use new
+ 	x_output_shadows signature.
+	(x_output_toolbar_button): use new x_output_x_pixmap signature.
+
+	* redisplay.h (struct display_box): new structure.
+	(struct display_glyph_area): ditto.
+  	declare new display_box functions.
+
+	* redisplay-x.c (x_output_pixmap): update for new display
+ 	box stuff.
+	(x_bevel_area): update to allow multiple edge styles and border
+ 	segments.
+	(x_output_display_block): update for new display_box stuff and
+ 	signatures.
+	(x_clear_region): ditto.
+	(x_output_x_pixmap): ditto. adjust offsets rather than clip.
+	(console_type_create_redisplay_x): declare new console methods.
+	(x_output_vertical_divider): update for new bevel_area signature.
+	(x_output_shadows): update to allow selective drawing of edges.
+
+	* redisplay-tty.c (tty_output_display_block): do nothing for
+ 	layouts.
+
+	* redisplay-output.c (redisplay_output_subwindow): convert to use
+ 	display_box structure, this allows us to put subwindows anywhere
+ 	with any offset, useful for layout glyphs.
+	(redisplay_output_layout): new function. output a layout and its
+ 	sub-glyphs.
+	(redisplay_output_pixmap): new modular function combining generic
+ 	parts of the X and mswindows versions. convert to use display_box
+ 	structures.
+	(redisplay_clear_clipped_region): new function. clear the area a
+ 	glyph is going into.
+	(redisplay_normalize_glyph_area): new function. calculate the
+ 	bounds of a display_glyph_area given a display_box.
+	(redisplay_normalize_display_box): new function. shrink a
+ 	display_box to enclose a display_glyph_area.
+	(redisplay_display_boxes_in_window_p): check whether the input
+ 	display_box and display_glyph_area are actually in a window.
+	(redisplay_calculate_display_boxes): calculate display boxes based
+ 	on conventional display_line metrics.
+	(bevel_modeline): update for new bevel_area signature.
+
+	* redisplay-msw.c (mswindows_output_blank): update for new
+ 	display_box stuff.
+	(mswindows_output_string): ditto.
+	(mswindows_output_dibitmap): ditto.
+	(mswindows_output_dibitmap_region): ditto.
+	(mswindows_output_pixmap): ditto.
+	(mswindows_bevel_area): update to allow multiple edge styles and
+ 	border segments.
+	(mswindows_output_display_block): update for new display_box stuff
+ 	and signatures.
+	(mswindows_clear_region): ditto.
+	(console_type_create_redisplay_mswindows): declare new console methods.
+
+	* lisp.h (edge_style): new enum.
+	declare display_box and display_glyph_area.
+
+	* gutter.c (output_gutter): update for new bevel_area signature.
+
+	* glyphs.h (image_instance_type): add layout.
+	(IMAGE_LAYOUT_MASK): ditto.
+	(LAYOUT_IMAGE_INSTANCEP): new macro.
+	(CHECK_LAYOUT_IMAGE_INSTANCE): ditto.
+	(struct Lisp_Image_Instance): add offsets for layout and the
+ 	layout type itself. move mask here also.
+	(IMAGE_INSTANCE_LAYOUT_CHILDREN): new macro.
+	(IMAGE_INSTANCE_LAYOUT_BORDER): ditto.
+	(XIMAGE_INSTANCE_LAYOUT_CHILDREN): ditto.
+	(XIMAGE_INSTANCE_LAYOUT_BORDER): ditto.
+
+	* glyphs.c (mark_image_instance): update for layouts.
+	(print_image_instance): ditto.
+	(image_instance_equal): ditto.
+	(image_instance_hash): ditto.
+	(allocate_image_instance): initialise offsets for layout.
+	(decode_image_instance_type): update for layouts.
+	(encode_image_instance_type): ditto.
+	(Fimage_instance_height): ditto.
+	(Fimage_instance_width): ditto.
+	(allocate_glyph): ditto.
+	(glyph_width): allow image instances as an argument. update for layouts.
+	(glyph_height_internal): ditto.
+	(syms_of_glyphs): add layout symbols.
+
+	* glyphs-x.h (struct x_image_instance_data): remove mask entry.
+	(IMAGE_INSTANCE_X_MASK): update.
+
+	* glyphs-x.c (x_label_instantiate): new function. instantiate a
+ 	label.
+	(image_instantiator_format_create_glyphs_x): initialise new layout
+ 	glyph type.
+
+	* glyphs-widget.c: new layout type.
+	(check_valid_orientation): new keyword checker for layouts.
+	(check_valid_justification): ditto.
+	(check_valid_border): ditto.
+	(check_valid_glyph_or_image_list): ditto.
+	(layout_possible_dest_types): new function for layout glyph type.
+	(layout_normalize): ditto.
+	(layout_instantiate): ditto.
+	(syms_of_glyphs_widget): new keywords for layout.
+	(image_instantiator_format_create_glyphs_widget): initialise the
+ 	layout glyph type.
+
+	* glyphs-msw.h (struct mswindows_image_instance_data): remove mask
+ 	argument.
+	(IMAGE_INSTANCE_MSWINDOWS_MASK): update.
+
+	* glyphs-msw.c: declare layout format.
+	(image_instantiator_format_create_glyphs_mswindows): initialise it.
+
+	* general.c: new symbols for layouts.
+
+	* console.h (struct console_methods): new console methods for
+ 	outputting pixmaps and strings.
+
+1999-08-23  Didier Verna  <verna@inf.enst.fr>
+
+	* sound.c: revert the renaming of `bell_volume' to `Vbell_volume'
+ 	and `bell_inhibit_time' to `Vbell_inhibit_time'.
+
+1999-08-18  Andy Piper  <andy@xemacs.org>
+
+	* redisplay-output.c (redisplay_output_subwindow): disable
+ 	clipping attempt.
+
+1999-08-17  Andy Piper  <andy@xemacs.org>
+
+	* gutter.c (redraw_exposed_gutter): handle degenerate case of no
+ 	area to expose or no gutter to display.
+
+1999-08-16  Charles G Waldman  <cgw@fnal.gov>
+
+	* sound.c: rename `bell_volume' to `Vbell_volume' and
+	`bell_inhibit_time' to `Vbell_inhibit_time'.
+
+1999-08-13  Charles G Waldman  <cgw@fnal.gov>
+
+	* sound.c: (bell-inhibit-time): New variable.
+	(ding): Use it.
+	(sound-alist): Fix docstring.
+
+1999-08-17  Andy Piper  <andy@xemacs.org>
+
+	* gui-x.c (button_item_to_widget_value): xstrdup name so that
+ 	deleting it is ok.
+
+1999-08-16 Jeff Miller <jmiller@smart.net>
+
+	* syntax.c (scan_words): make compile.
+
+1999-08-16  Andy Piper  <andy@xemacs.org>
+
+	* redisplay-output.c (redisplay_output_subwindow): try and be more
+ 	relaxed about clipping possibilities.
+
+	* glyphs-x.c (x_tab_control_set_property): free_widget_value_tree
+ 	rather than just the widget_value.
+	(x_update_subwindow): ditto.
+	(x_widget_instantiate): ditto.
+
+	* gutter.c (output_gutter): shrink current display lines if
+ 	required.
+
+1999-08-15  Andy Piper  <andy@xemacs.org>
+
+	* redisplay.h: declare free_display_lines.
+
+	* redisplay.c (free_display_lines): make non-static.
+
+	* gutter.c (free_frame_gutters): use free_display_lines instead of
+ 	Dynarr_free.
+	(calculate_gutter_size): ditto.
+
+1999-08-12  Jan Vroonhof  <vroonhof@math.ethz.ch>
+
+	* eval.c (run_hook_with_args_in_buffer): GCPRO globals.
+
+1999-08-14  Andy Piper  <andy@xemacs.org>
+
+	* glyphs.c (update_subwindow_cachel): make it less brittle.
+
+1999-08-04  Mike Woolley  <mike@bulsara.com>
+
+	* scrollbar-msw.c (mswindows_handle_mousewheel_event): Fixed
+ 	problem in wheelmouse code occurring when the horizontal scrollbar
+ 	is enabled but not visible.
+
+1999-08-08  Andy Piper  <andyp@beasys.com>
+
+	* toolbar-msw.c (mswindows_redraw_frame_toolbars): new function.
+	(console_type_create_toolbar_mswindows): use it.
+
+	* glyphs.c (Fset_image_instance_property): fiddly reorganisation.
+
+	* redisplay-output.c (redisplay_output_display_block): unmap
+ 	subwindows in the block area before outputting the block.
+
+	* event-msw.c (mswindows_wnd_proc): check the update rect before
+ 	painting and disable expose registration while painting.
+
+	* glyphs.c (register_ignored_expose): check
+ 	hold_ignored_expose_registration before registering expose events.
+
+	* redisplay.c (redisplay_frame): reset the subwindow cache before
+ 	displaying the gutter.
+
+	* glyphs-msw.c (mswindows_map_subwindow): move the window before
+ 	mapping.
+
+	* gutter.c (update_frame_gutters): check for glyphs_changed as if
+ 	it is the subwindow cache will have been reset.
+
+1999-08-06  Andy Piper  <andyp@beasys.com>
+
+	* gui-x.c (button_item_to_widget_value): cope with strings.
+
+	* glyphs.h: declare global widget functions.
+	(IIFORMAT_HAS_SHARED_DEVMETHOD): new macro.
+
+	* glyphs-x.c (x_combo_box_instantiate): do generic initialization
+ 	here. remove dead code.
+	(image_instantiator_format_create_glyphs_x): enable combo boxes
+ 	for Motif 2.0.
+
+	* glyphs-widget.c (widget_instantiate_1): make non-static.
+	(tree_view_instantiate): renamed from combo_box_instantiate.
+	(image_instantiator_format_create_glyphs_widget): use new/changed methods.
+
+	* glyphs-msw.c (mswindows_combo_box_instantiate): do generic
+ 	initialization here.
+
+	* lwlib-Xm.c (xm_update_combo_box): new function.
+	(xm_update_one_widget): call it.
+	(xm_update_one_value): deal with combo boxes as well as lists.
+	(xm_create_combo_box): create a drop-down combo box.
+
+	* toolbar-msw.c (mswindows_output_toolbar): call
+ 	mswindows_move_toolbar.
+
+1999-08-05  Andy Piper  <andyp@beasys.com>
+
+	* window.c (Fcurrent_pixel_column): new function. use display
+ 	lines to calculate pixel position of point.
+	* window.c (syms_of_window): declare it.
+
+1999-08-05  Andy Piper  <andy@xemacs.org>
+
+	* glyphs.c (check_for_ignored_expose): ignore exposures wholly
+ 	contained in our ignore list.
+
+	* buffer.c (Frecord_buffer): add call to record-buffer-hook.
+	(syms_of_buffer): declare record-buffer-hook.
+
+	* s/mingw32.h: define mousewheel things.
+
+1999-08-04  Mike Woolley <mike@bulsara.com>
+
+	* windowsnt.h (_WIN32_WINNT): enable for win95
+
+	* s/cygwin32.h: define mousewheel things.
+
+	* scrollbar-msw.h: declare mousewheel handler.
+
+	* scrollbar-msw.c (mswindows_handle_mousewheel_event): new function.
+
+1999-08-04  Andy Piper  <andy@xemacs.org>
+
+	* gui-x.c (gui_items_to_widget_values): remove unused variable.
+	(gui_items_to_widget_values_1): ditto.
+
+	* gui-x.h: unconditionally define since it is used everywhere.
+
+1999-08-04  Andy Piper  <andy@xemacs.org>
+
+	* glyphs-x.c (x_finalize_image_instance): only free pixels if we
+ 	have that type of image.
+
+1999-07-30  Andy Piper  <andy@xemacs.org>
+
+	* redisplay-output.c (redisplay_unmap_subwindows): add comparison
+ 	subwindow to not unmap if required.
+	(redisplay_unmap_subwindows_maybe): comparison is Qnil.
+	(redisplay_unmap_subwindows_except_us): new function.
+	(redisplay_output_subwindow): use it to unmap windows in the area
+ 	we are displaying into.
+
+	* glyphs.c (update_subwindow_cachel_data): always update as we
+ 	only ever get called when an update is required.
+	(update_subwindow_cachel): new function. sync a subwindow with its
+ 	cachel.
+	(Fresize_subwindow): use it.
+	(register_ignored_expose): make sure we set the tail correctly.
+
+1999-07-28  Andy Piper  <andy@xemacs.org>
+
+	* redisplay-output.c (redisplay_clear_bottom_of_window): remove
+ 	unneeded device.
+
+	* gutter.c (redraw_exposed_gutter): unmap subwindows from the
+ 	whole gutter.
+
+	* gui.h: declare parse_gui_item_tree_list and
+ 	parse_gui_item_tree_children.
+
+	* gui.c (parse_gui_item_tree_item): new function for parsing item
+ 	lists into gui-item trees.
+	(parse_gui_item_tree_children): ditto.
+	(parse_gui_item_tree_list): ditto.
+
+	* gui-x.h: declare gui_items_to_widget_values.
+
+	* gui-x.c (gui_items_to_widget_values_1): new function for
+ 	recursively parsing gui-items into widget_values.
+	(gui_item_children_to_widget_values): ditto.
+	(gui_items_to_widget_values): ditto.
+	(sanity_check_lwlib): add widgets macrolets.
+
+	* glyphs.h (IMAGE_INSTANCE_WIDGET_ITEMS): rename from *ITEM.
+	(XIMAGE_INSTANCE_WIDGET_ITEMS): ditto.
+	(IMAGE_INSTANCE_WIDGET_ITEM): rename from *SINGLE_ITEM.
+	(XIMAGE_INSTANCE_WIDGET_ITEM): ditto.
+	(struct expose_ignore): new structure for storing ignorable expose
+ 	events.
+
+	* glyphs.c (valid_image_instantiator_format_p): fix so that using
+ 	a console-type as a locale works.
+	(mark_image_instance): ITEM->ITEMS.
+	(image_instance_equal): ditto.
+	(image_instance_hash): ditto.
+	(struct expose_ignore_blocktype): new blocktype.
+	(check_for_ignored_expose): new function. checks frame exposure
+ 	list for events to ignore.
+	(register_ignored_expose): new function. registers an expose event
+ 	as ignorable.
+	(unmap_subwindow): register the expose event as ignorable.
+	(vars_of_glyphs): initialise the exposure blocktype.
+
+	* glyphs-x.c (x_finalize_image_instance): use lw_destroy_widget.
+	(x_update_subwindow): modify all widgets using widget_value tree
+ 	rather than just a single widget value.
+	(x_widget_instantiate): LWLIB_USES_MOTIF -> LWLIB_WIDGETS_MOTIF.
+	make sure widgets don't resize themselves.
+	(x_tab_control_instantiate): new function. use lwlib tab functions.
+	(x_tab_control_set_property): new function.
+	(image_instantiator_format_create_glyphs_x): add tab_control.
+
+	* glyphs-widget.c (widget_text_to_pixel_conversion): calculate
+ 	slightly more sensibly.
+	(initialize_widget_image_instance): ITEM->ITEMS.
+	(widget_instantiate_1): parse gui items generically into the ITEMS
+ 	entry.
+
+	* glyphs-msw.c (mswindows_update_subwindow): replace
+ 	SINGLE_ITEM->ITEM.
+	(mswindows_register_widget_instance): ditto.
+	(add_tree_item): modify to use new pre-initialised gui-item
+ 	structure.
+	(add_tab_item): ditto.
+	(mswindows_tab_control_instantiate): ditto.
+	(mswindows_tab_control_set_property): ditto.
+	(image_instantiator_format_create_glyphs_mswindows): predicate
+ 	existance of widgets on HAVE_WIDGETS.
+
+	* frame.h (struct frame): add subwindow_exposures variables.
+
+	* frame.c (allocate_frame_core): reset subwindow_exposures links.
+
+	* event-msw.c (mswindows_wnd_proc): check for ignored
+ 	expose events before redrawing.
+
+	* event-Xt.c (emacs_Xt_handle_magic_event): check for ignored
+ 	expose events before redrawing.
+
+1999-07-30  SL Baur  <steve@xemacs.org>
+
+	* scrollbar-x.c: should include EmacsFrame.h.
+	From Jeff Miller <jmiller@smart.net>
+
+1999-07-30  XEmacs Build Bot <builds@cvs.xemacs.org>
+
+	* XEmacs 21.2.19 is released
+
+1999-07-27  Jeff Miller  <jmiller@smart.net>
+
+	* add a "#ifdef HAVE_MENUBARS"  wrapper to gui.c around
+	  menubar_show_keybindings.
+
+1999-07-23  SL Baur  <steve@miho>
+
+	* mule-charset.c (syms_of_mule_charset): Delete duplicated
+	definition of Qccl_program.
+
+	* mule-ccl.h: Make a global declaration of it here.
+
+1999-07-20  Bob Weiner  <weiner@beopen.com>
+
+	* s/sco7.h: Added from rr@sco.com.
+
+1999-06-25  MORIOKA Tomohiko  <tomo@etl.go.jp>
+
+	* mule-ccl.c (ccl_driver): Fix `CCL_WriteMultibyteChar2'.
+
+1999-06-24  MORIOKA Tomohiko  <tomo@etl.go.jp>
+
+	* file-coding.c (mule_decode): Setup `str->ccl.last_block'.
+	(mule_encode): Likewise.
+
+	* mule-ccl.c (Qccl_program): New variable.
+	(CCL_SUSPEND): New macro.
+	(CCL_INVALID_CMD): New macro.
+	(CCL_READ_CHAR): Don't regard as invalid command while processing
+	the last block even if input is empty; use
+	`CCL_STAT_SUSPEND_BY_SRC' instead of `CCL_STAT_SUSPEND'.
+	(vars_of_mule_ccl): Setup `Qccl_program' and `Qccl_program_idx'.
+
+	* mule-ccl.h (CCL_STAT_SUCCESS): Moved from mule-ccl.c.
+	(CCL_STAT_SUSPEND_BY_SRC): Imported from Emacs 20.3.10.
+	(CCL_STAT_SUSPEND_BY_DST): Likewise.
+	(CCL_STAT_INVALID_CMD): Moved from mule-ccl.c; change value from 2.
+	(CCL_STAT_QUIT): Moved from mule-ccl.c; change value from 3.
+
+1999-05-04  Ken'ichi Handa  <handa@gnu.org>
+
+	* mule-ccl.h (struct ccl_program): New member stack_idx.
+
+	* mule-ccl.c (ccl_prog_stack_struct): Declare it as static.
+	(ccl_driver): Setup stack_idx and ccl_prog correctly.  Update them
+	before returing.
+	(setup_ccl_program): Initialize ccl->stack_idx to 0.
+
+1998-10-12  Kenichi Handa  <handa@etl.go.jp>
+
+	* mule-ccl.c (CCL_DECODE_SJIS, CCL_ENCODE_SJIS): Swap the
+	definitions.
+
+1998-08-18  Kenichi Handa  <handa@etl.go.jp>
+
+	* mule-ccl.c (CCL_READ_CHAR): If eof is encounterd while
+	processing the last block, don't just finish but processes eol
+	block of the current CCL program.
+	(ccl_driver): Add a new jump label ccl_repeat for the above
+	change.
+
+1998-04-15  Kenichi Handa  <handa@etl.go.jp>
+
+	* mule-ccl.c: Typo in comments fixed.
+	(Qccl_program_idx): New variables.
+	(CCL_ReadMultibyteChar2): Macro name changed from
+	CCL_ReadMultibyteCharacter.
+	(CCL_WriteMultibyteChar2): Macro name changed from
+	CCL_WriteMultibyteChar2.
+	(ccl_driver): Adjusted for the above changes.
+	(resolve_symbol_ccl_program): New function.
+	(Fccl_execute): The arg CCL-PROGRAM can be a symbol of CCL
+	program.  If CCL-PRGRAM is a vector, convert symbols in it to ID
+	numbers by resolve_symbol_ccl_program.
+	(Fccl_execute_on_string): Likewise.
+	(Fregister_ccl_program): If the arg CCL-PRGRAM is a vector,
+	convert symbols in it to ID numbers by resolve_symbol_ccl_program.
+
+1998-01-21  Kenichi Handa  <handa@etl.go.jp>
+
+	* mule-ccl.h: (struct ccl_program): New member private_state.
+
+	* mule-ccl.c
+	(CCL_Call): Fix the comment.
+	(CCL_ReadMultibyteCharacter, CCL_WriteMultibyteCharacter): New
+	macros for CCL Commands.
+	(EXCMD): New macro.
+	(ccl_driver): New case label `CCL_Extension'.
+	(setup_ccl_program): Initialize the member `private_state' of CCL.
+
+1999-07-08  Katsumi Yamaoka <yamaoka@jpl.org>
+
+	* keymap.c (copy_keymap_internal): Inherit the default binding.
+
+1999-07-14  Kazuyuki IENAGA <kazz@imasy.or.jp>
+
+	* event-Xt.c (handle_focus_event_1): Re-enable Motif/XIM to get
+	focus the event (XIM_focus_event).
+	(emacs_Xt_handle_magic_event): No side effect on Motif/XIM because
+	XIM_SetGeometry does nothing in input_method_motif.c, but re-unify
+	the interface for future use (XIM_SetGeometry).
+	* redisplay-x.c (x_output_string): Re-enable Motif/XIM to set spot
+	location (XIM_SetSpotLocation).
+	(x_output_eol_cursor): Ditto.
+
+1999-07-17  Gunnar Evermann  <ge204@eng.cam.ac.uk>
+
+	* gdbinit (pobj): change lrecord_foo to &lrecord_foo to match
+	Olivier's change to lrecord.h of 1999-04-22
+
+1999-07-20  Robert Pluim  <rpluim@bigfoot.com>
+
+	* gutter.c (redraw_exposed_gutter): Change type of pos from
+	enum toolbar_pos -> enum gutter_pos, since former is only defined
+	if toolbar support is.
+
+1999-07-19  Andy Piper  <andy@xemacs.org>
+
+	* glyphs-x.c (x_resize_subwindow): cope with widgets as well as
+ 	subwindows.
+
+	* gutter.c (gutter_validate): new function for the gutter specifier.
+	(specifier_type_create_gutter): declare specifier validator.
+
+	* buffer.h (INC_CHARBYTIND): add for no error checking version.
+
+1999-07-18  Andy Piper  <andy@xemacs.org>
+
+	* redisplay.c (add_emchar_rune): use XSTRING_DATA not string_data.
+
+	* glyphs-msw.c (console_type_create_glyphs_mswindows): add
+ 	resize_subwindow.
+	(mswindows_resize_subwindow): new function.
+
+	* gutter.c (redraw_exposed_gutter): only reset the
+ 	current_display_lines if non-zero.
+	(Fgutter_pixel_height): new function.
+	(Fgutter_pixel_width): new function.
+
+	* event-msw.c (mswindows_wnd_proc): set the mask of the parameter
+ 	we want to retrive from the tab control.
+
+1999-07-17  Andy Piper  <andy@xemacs.org>
+
+	* window.c (change_window_height): mark gutters changed when we're
+ 	done.
+
+	* gutter.c (specifier_vars_of_gutter): make defaults more
+ 	sensible.
+
+	* gutter.h (WINDOW_REAL_GUTTER_BORDER_WIDTH): adjust to be 0 for 0
+ 	height gutter.
+	(DEFAULT_GUTTER_WIDTH): change.
+	(DEFAULT_GUTTER_BORDER_WIDTH): change.
+
+1999-07-18  Andy Piper  <andy@xemacs.org>
+
+	* redisplay.c (add_emchar_rune): use XSTRING_DATA not string_data.
+
+1999-07-16  Andy Piper  <andy@xemacs.org>
+
+	* frame.c (Fmake_frame): call init_frame_gutters().
+
+	* redisplay.c (add_emchar_rune): use string functions if we are
+ 	working with a string.
+	(position_redisplay_data_type): add string element.
+
+1999-07-15  Andy Piper  <andy@xemacs.org>
+
+	* winslots.h: add real_gutter_size slots to hold the actual gutter
+ 	size. This is important for autodetected sizes.
+
+	* gutter.c (calculate_gutter_size): calculate size for gutters
+ 	that have 'autodetect size.
+
+	* redisplay-msw.c (mswindows_output_vertical_divider): adjust
+ 	extent of divider for gutters.
+
+	* redisplay-x.c (x_output_vertical_divider): adjust extent of
+ 	divider for gutters.
+
+	* scrollbar.c (update_scrollbar_instance): adjust scrollbar
+ 	position to take into account the gutters.
+
+	* redisplay.c (generate_modeline): adjust modeline position to
+ 	take into account the gutters.
+
+1999-07-14  Andy Piper  <andy@xemacs.org>
+
+	* gutter.c (frame_topmost_window): new function.
+	(frame_bottommost_window): ditto.
+	(frame_leftmost_window): ditto.
+	(frame_rightmost_window): ditto.
+
+1999-07-13  Andy Piper  <andy@xemacs.org>
+
+	* redisplay.c (calculate_display_line_boundaries): use text
+ 	boundaries so that gutters get handled properly.
+
+1999-07-12  Andy Piper  <andy@xemacs.org>
+
+	* glyphs-x.c (x_widget_instantiate): set the font Motif-style if
+ 	we're using Motif.
+
+	* redisplay-output.c (redisplay_clear_to_window_end): generalised
+ 	from redisplay-x.c
+
+	* redisplay-x.c (redisplay_clear_to_window_end): moved to
+ 	redisplay.c
+
+	* redisplay-msw.c (redisplay_clear_to_window_end): deleted.
+
+	* gutter.c: new file - implements gutters. All new functions are
+ 	semantically equivalent to the toolbar functions.
+	(gutter_was_visible): new function.
+	(get_gutter_coords): ditto.
+	(output_gutter): ditto.
+	(clear_gutter): ditto.
+	(update_frame_gutters): ditto.
+	(redraw_exposed_gutter): ditto.
+	(redraw_exposed_gutters): ditto.
+	(free_frame_gutters): ditto.
+	(init_frame_gutters): ditto.
+	(decode_gutter_position): ditto.
+	(Fset_default_gutter_position): ditto.
+	(Fset_default_gutter_position): ditto.
+	(Fdefault_gutter_position): ditto.
+	(gutter_after_change): ditto.
+	(Fgutter_specifier_p): ditto.
+	(recompute_overlaying_specifier): ditto.
+	(gutter_specs_changed): ditto.
+	(default_gutter_specs_changed): ditto.
+	(gutter_geometry_changed_in_window): ditto.
+	(default_gutter_size_changed_in_window): ditto.
+	(default_gutter_border_width_changed_in_window): ditto.
+	(default_gutter_visible_p_changed_in_window): ditto.
+	(syms_of_gutter): ditto.
+	(vars_of_gutter): ditto.
+	(specifier_type_create_gutter): ditto.
+	(specifier_vars_of_gutter): ditto.
+
+	* gutter.h: new file. Contains gutter constants and sizing macros
+ 	similar to those for the toolbar.
+
+	* winslots.h: add gutter variables.
+
+	* window.h: declare window_is_* functions.
+
+	* window.c (window_is_lowest): make non-static.
+	(window_is_highest): ditto.
+	(window_top_toolbar_height): deleted.
+	(window_bottom_toolbar_height): deleted.
+	(window_left_toolbar_width): deleted.
+	(window_right_toolbar_width): deleted.
+	(window_top_gutter_height): add gutter sizing.
+	(window_bottom_gutter_height): ditto.
+	(window_left_gutter_width): ditto.
+	(window_right_gutter_width): ditto.
+
+	* symsinit.h: declarations for gutters vars etc.
+
+	* search.c (bi_find_next_emchar_in_string): new function.
+
+	* scrollbar.c (update_scrollbar_instance): remove reference to
+ 	window_bottom_toolbar_height which did nothing.
+
+	* redisplay.h (struct display_line): add face indices for
+ 	overriding defaults in output_display_line.
+	Add gutter_changed flags and declarations.
+
+	* redisplay.c (create_string_text_block): new function, similar to
+ 	create_text_block but for strings. Display tables etc are used
+ 	from the currently selected window.
+	(generate_string_display_line): ditto. Similar to
+ 	generate_display_line.
+	(generate_displayable_area): generate display lines for a given
+ 	area on a frame. Input is the string, with associated extents, to
+ 	display.
+	(redisplay_frame): add gutter_changed check.
+	(redisplay_device): ditto.
+	(redisplay_without_hooks): ditto.
+
+	* redisplay-x.c (bevel_modeline): moved to redisplay.c.
+	(x_redraw_exposed_area): redraw exposed gutters.
+	(x_bevel_area): new redisplay device method.
+	(x_type_create_redisplay_mswindows): add bevel_area device method.
+	(x_output_display_block): fiddly Martin-style cleanup.
+	(x_output_vertical_divider): use bevel_area.
+
+	* redisplay-output.c (output_display_line): check display_lines
+ 	for face information before using defaults.
+	(bevel_modeline): new function, calls bevel_area with appropriate
+ 	values.
+
+	* redisplay-msw.c (bevel_modeline): moved to redisplay.c.
+	(mswindows_redraw_exposed_area): redraw exposed gutters.
+	(mswindows_bevel_area): new redisplay device method.
+	(console_type_create_redisplay_mswindows): add bevel_area device
+ 	method.
+
+	* indent.c (string_column_at_point): add column_at_point but for
+ 	strings.
+
+	* glyphs-x.c (image_instantiator_format_create_glyphs_x): only
+ 	instantiate widgets that we have a toolkit for.
+
+	* general.c: add Qgutter.
+
+	* frame.h (struct frame): add display lines for gutters and
+ 	visibility flags.
+
+	* frame.c (set_frame_selected_window): mark gutters changed.
+
+	* emacs.c (main_1): add gutter initialisation.
+
+	* device.h (struct device): add gutter_changed flag and macros to
+ 	manipulate it.
+
+	* console.h (struct console_methods): new bevel area redisplay
+ 	method.
+
+	* buffer.h (REAL_INC_CHARBYTIND): new macro for strings as
+ 	REAL_INC_BYTIND is for buffers.
+	(INC_CHARPTR): ditto.
+
+	* Makefile.in.in (objs): add gutter.o
+
+1999-07-13  XEmacs Build Bot <builds@cvs.xemacs.org>
+
+	* XEmacs 21.2.18 is released
+
+1999-07-08  SL Baur  <steve@mule.m17n.org>
+
+	* event-Xt.c (handle_focus_event_1): Guard FRAME_X_XIC with
+	XIM_XLIB.
+	(emacs_Xt_handle_magic_event): Ditto.
+	* redisplay-x.c (x_output_string): Ditto.
+	(x_output_eol_cursor): Ditto.
+
+1999-06-30  Kazuyuki IENAGA <kazz@imasy.or.jp>
+
+	*  event-Xt.c, input-method-xlib.c, redisplay-x.c: Avoid the
+	problem that when XIM is destroyed or missed with some reason,
+	xemacs will die.  Now xim=xlib waits the XIM will be ready and
+	endures the case of XIM end up.
+
+1999-07-03  Gunnar Evermann  <ge204@eng.cam.ac.uk>
+
+	* tooltalk.c (init_tooltalk): save signal actions for SIGQUIT,
+	SIGINT and SIGCHLD before calling tt_open and restore the
+	afterwards. This fixes e.g. the zombie subprocesses on Solaris
+
+1999-07-06  SL Baur  <steve@xemacs.org>
+
+	* s/linux.h: gcc-2.8 changes for powerpc
+	From Justin Vallon <vallon@mindspring.com>
+
+1999-07-05  Didier Verna  <verna@inf.enst.fr>
+
+	* indent.c: new symbol Qcoerce.
+	(Fmove_to_column): use it + doc string update.
+
+1999-07-04  Andy Piper  <andy@xemacs.org>
+
+	* console.c: undo earlier Fprovide changes.
+	* fns.c: ditto.
+	* console.h: ditto.
+
+	* console-tty.c (image_instantiator_format_create_glyphs_tty): new
+ 	function. validate appropriate image formats for tty.
+
+	* glyphs.h (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT_NO_SYM):
+ 	initialize consoles parameter.
+	(struct image_instantiator_methods): add consoles parameter.
+	(IIFORMAT_VALID_CONSOLE): new function. validate the format on the
+ 	console.
+	(INITIALIZE_DEVICE_IIFORMAT): validate the format on the given
+ 	console.
+
+	* glyphs-msw.c: declare instantiators for later use.
+	(image_instantiator_format_create_glyphs_mswindows): validate xpm
+ 	and friends on the mswindows console.
+	* glyphs-x.c: ditto.
+
+	* glyphs.c (valid_image_instantiator_format_p): disallow glyphs
+ 	that have not been registered on the supplied device.
+	(Fvalid_image_instantiator_format_p): add locale argument.
+	(instantiate_image_instantiator): valid image instantiator on the
+ 	device.
+
+	* symsinit.h: add image_instantiator_format_create_glyphs_tty()
+ 	declaration.
+
+	* emacs.c (main_1): add call to
+ 	image_instantiator_format_create_glyphs_tty().
+
+1999-06-29  Olivier Galibert  <galibert@pobox.com>
+
+	* lisp.h: Add #include <stddef.h>.
+
+	* sysdep.c: Remove #include <stddef.h>.
+	* symbols.c: Remove #include <stddef.h>.
+	* sheap.c: Remove #include <stddef.h>.
+	* opaque.c: Remove #include <stddef.h>.
+	* nt.c: Remove #include <stddef.h>.
+	* mule-charset.c: Remove #include <stddef.h>.
+	* marker.c: Remove #include <stddef.h>.
+	* file-coding.c: Remove #include <stddef.h>.
+	* extents.c: Remove #include <stddef.h>.
+	* elhash.c: Remove #include <stddef.h>.
+	* data.c: Remove #include <stddef.h>.
+	* chartab.c: Remove #include <stddef.h>.
+	* bytecode.c: Remove #include <stddef.h>.
+	* alloc.c: Remove #include <stddef.h>.  Fix vector description
+
+1999-06-30  SL Baur  <steve@miho.m17n.org>
+
+	* editfns.c: Document "%s" format spec.
+	Suggested by Bob Weiner <weiner@altrasoft.com>
+
+1999-06-29  Andy Piper  <andy@xemacs.org>
+
+	* event-msw.c: fix definition booboo.
+
+1999-06-28  Andy Piper  <andy@xemacs.org>
+
+	* glyphs-x.c: change tree -> tree-view, progress ->
+ 	progress_gauge, edit -> edit-field, tab -> tab-control, combo ->
+ 	combo-box.
+	(complex_vars_of_glyphs_x): provide-on-console the implemented
+ 	widget types.
+
+	* glyphs-msw.c: ditto.
+	(complex_vars_of_glyphs_mswindows): ditto.
+
+	* lisp.h: add Fprovide_on_console.
+
+	* fns.c (Ffeaturep): add extra optional console argument.
+	(Fprovide_on_console): like Fprovide but provides only on the
+ 	specified console-type.
+	(Frequire): check console-features as well as global features.
+
+	* console.c (Fconsole_features): new function. return features for
+ 	this console.
+	(syms_of_console): add Fconsole_features.
+
+	* console.h (CONMETH_FEATURES): new function for accessing features.
+	(CONSOLE_FEATURES): ditto.
+	(struct console_methods): add features slot.
+	(INITIALIZE_CONSOLE_TYPE): initialize features slot.
+
+1999-06-28  Andy Piper  <andy@xemacs.org>
+
+	* event-Xt.c (handle_focus_event_1): conditionally compile for
+ 	X11R5.
+
+	* s/cygwin32.h: fix me website address.
+
+	* event-msw.c: add NMHDR for pre b20 cygwin builds.
+
+	* gui-x.c (button_item_to_widget_value): only add callback if it
+ 	is non-nil.
+
+	* glyphs-x.c: add progress, edit and combo instantiators.
+	(x_widget_set_property): new function. uses lwlib to set widget
+ 	values.
+	(x_widget_property): new function. uses lwlib to get widget
+ 	values.
+	(x_button_instantiate): support images in buttons.
+	(x_button_property): new function. use lwlib to get the selected
+ 	state.
+	(x_progress_instantiate): new function for instantiating progress
+ 	gauges.
+	(x_progress_set_property): new function. sets the progress gauge
+ 	position.
+	(x_edit_instantiate): new function. for instantiating edit fields.
+	(x_combo_instantiate): new function. for instantiating combo
+ 	boxes.
+	(image_instantiator_format_create_glyphs_x): add new device ii
+ 	formats.
+
+	* glyphs-msw.c (mswindows_tab_instantiate): remove redundant var.
+
+	* console.h (CONSOLE_FEATURES): new features accesor.
+
+	* conslots.h (MARKED_SLOT): add features entry.
+
+1999-06-25  Andy Piper  <andy@xemacs.org>
+
+	* menubar-x.c (menu_item_descriptor_to_widget_value_1): use new
+ 	gui functions.
+
+	* menubar-msw.c: move MAX_MENUITEM_LENGTH to gui.h
+
+	* gui.h (struct Lisp_Gui_Item): add accelerator.
+
+	* gui.c (gui_item_add_keyval_pair): deal with accelerators.
+	(gui_item_init): ditto.
+	(gui_add_item_keywords_to_plist): ditto.
+	(mark_gui_item): ditto.
+	(gui_item_hash): ditto.
+	(gui_item_accelerator): new function.
+	(gui_name_accelerator): new function stolen from gui-x.c
+
+	* gui-x.c (popup_selection_callback): always define. mark
+ 	subwindows changed after calling a callback.
+	(menu_name_to_accelerator): deleted.
+	(button_item_to_widget_value): forward gui_item things to gui_item
+ 	functions.
+
+	* glyphs-x.h (struct x_subwindow_data): add data for widgets. add
+ 	appropriate accesors.
+
+	* glyphs-x.c: declare new glyph formats.
+	(x_finalize_image_instance): unmanage and destroy widgets if they
+ 	exist.
+	(x_unmap_subwindow): handle widgets specially.
+	(x_map_subwindow): ditto. offset display of widgets by offset of
+ 	text widget within container.
+	(x_update_subwindow): new function. call lw_modify_all_widgets
+ 	when we are a widget.
+	(x_widget_instantiate): new function for generically creating
+ 	widgets-glyphs. toolkit specifics forwarded to lwlib.
+	(x_button_instantiate): new function for instantiating
+ 	widgets-glyph buttons.
+	(console_type_create_glyphs_x): register update_subwindow.
+	(image_instantiator_format_create_glyphs_x): register widget and
+ 	button types.
+
+	* event-msw.c (mswindows_wnd_proc): remove redundant variable.
+
+	* event-Xt.c (x_event_to_emacs_event): call handle_focus_event_1
+ 	when we get a button press in case we do not have the focus.
+	(handle_focus_event_1): set the keyboard focus to the text widget
+ 	if we do not have it.
+
+	* dialog-x.c (dbox_descriptor_to_widget_value): use new gui_item
+ 	functions.
+
+1999-06-24  SL Baur  <steve@miho.m17n.org>
+
+	* syntax.c (scan_words): Restore non-Mule code.
+	(word_constituent_p): Restore.
+
+1999-06-23  Olivier Galibert  <galibert@pobox.com>
+
+	* config.h.in: Add missing #undef *_USER_DEFINED.
+
+1999-06-23  SL Baur  <steve@miho.m17n.org>
+
+	* lisp.h (set_bit_vector_bit): Force promotion to unsigned long
+	int (fixes a 64-bit problem).
+
+	* chartab.c (word_boundary_p): Use EQ not == for lisp_object
+	comparison.
+
+1999-03-23  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
+
+	* paths.h.in (PATH_DOC): Made doc-directory configurable.
+
+1999-06-22  Olivier Galibert  <galibert@pobox.com>
+
+	* lrecord.h: Added basic external description system.
+
+	* symbols.c: Added symbol, symbol-value-buffer-local,
+ 	symbol-value-lisp-magic and symbol-value-varalias description.
+	* mule-charset.c: Added charset description.
+	* marker.c: Added marker description.
+	* keymap.c: Added keymap description.
+	* glyphs.c: Added glyph description.
+	* floatfns.c: Added float description.
+	* file-coding.c: Added coding-system description.
+	* extents.c: Added extent description.
+	* elhash.c: Added hash-table description.
+	* data.c: Added weak-list desciption.
+	* chartab.c: Added char-table-entry and char-table description.
+	* bytecode.c: Added compiled-function description.
+	* alloc.c: Added cons, vector and string description.
+
+1999-06-22  Olivier Galibert  <galibert@pobox.com>
+
+	* lrecord.h (struct lrecord_header): Reduced size to 4 bytes.
+	Updated everything to the removal of the "flags" substructure.
+
+	* lisp.h (subr_lheader_initializer): Updated.
+	* symeval.h (symbol_value_forward_lheader_initializer): Updated.
+
+1999-06-20  MORIOKA Tomohiko  <tomo@etl.go.jp>
+
+	* syntax.c (word_constituent_p): Deleted.
+	(scan_words): Use `WORD_BOUNDARY_P'.
+
+	* chartab.c (Vword_combining_categories): New variable.
+	(Vword_separating_categories): Likewise.
+	(CATEGORYP): New macro.
+	(CATEGORY_SET): Likewise.
+	(CATEGORY_MEMBER): Likewise.
+	(word_boundary_p): New function.
+	(complex_vars_of_chartab): Set up new variable
+	`word-combining-categories' and `word-separating-categories'.
+
+1999-06-18  Olivier Galibert  <galibert@pobox.com>
+
+	* lrecord.h: Added description as a placehold in the lrecord
+ 	implementation structures.  Added the parameter to all constructor
+ 	defines.
+
+	* alloc.c: Added placeholders.
+	* buffer.c: Ditto.
+	* bytecode.c: Ditto.
+	* chartab.c: Ditto.
+	* console.c: Ditto.
+	* data.c: Ditto.
+	* database.c: Ditto.
+	* device.c: Ditto.
+	* eldap.c: Ditto.
+	* elhash.c: Ditto.
+	* eval.c: Ditto.
+	* event-stream.c: Ditto.
+	* events.c: Ditto.
+	* extents.c: Ditto.
+	* faces.c: Ditto.
+	* file-coding.c: Ditto.
+	* floatfns.c: Ditto.
+	* fns.c: Ditto.
+	* frame.c: Ditto.
+	* glyphs.c: Ditto.
+	* gui-x.c: Ditto.
+	* keymap.c: Ditto.
+	* lstream.c: Ditto.
+	* marker.c: Ditto.
+	* mule-charset.c: Ditto.
+	* objects.c: Ditto.
+	* opaque.c: Ditto.
+	* process.c: Ditto.
+	* rangetab.c: Ditto.
+	* specifier.c: Ditto.
+	* symbols.c: Ditto.
+	* toolbar.c: Ditto.
+	* tooltalk.c: Ditto.
+	* window.c: Ditto.
+
+1999-06-22  XEmacs Build Bot <builds@cvs.xemacs.org>
+
+	* XEmacs 21.2.17 is released
+
+1999-06-13  Oscar Figueiredo  <oscar@xemacs.org>
+
+	* config.h.in (HAVE_LDAP_SET_OPTION): New define
+	(HAVE_LDAP_GET_LDERRNO): Ditto
+	(HAVE_LDAP_RESULT2ERROR): Ditto
+	(HAVE_LDAP_PARSE_RESULT): Ditto
+	(HAVE_UMICH_LDAP): Removed
+	(HAVE_NS_LDAP): Removed
+
+	* eldap.h (struct Lisp_LDAP): Removed the `livep' member as
+	suggested by Olivier Galibert
+	(CHECK_LIVE_LDAP): Test on `ld' instead of `livep'
+
+	* eldap.c: Take the removal of `livep' into account in all the
+	necessary functions
+	(signal_ldap_error): Take two additional parameters
+	Added new finer compilation conditions in order to use
+	ldap_parse_result or ldap_result2error if available
+	(Fldap_open): Conform to this new API
+	(Fldap_search_internal): Ditto
+
+1999-06-17  SL Baur  <steve@miho.m17n.org>
+
+	* data.c (struct int_or_double): Should use EMACS_INT not int.
+
+1999-06-16  Norbert Koch  <n.koch@eai-delta.de>
+
+	* redisplay-msw.c: Run 'ccl_driver' with 'CCL_MODE_ENCODING' as in
+	redisplay-x.c
+
+1999-06-12  MORIOKA Tomohiko  <tomo@etl.go.jp>
+
+	* redisplay-x.c (separate_textual_runs): Run `ccl_driver' with
+	`CCL_MODE_ENCODING'.
+
+	* file-coding.c (mule_decode): Run `ccl_driver' with
+	`CCL_MODE_DECODING'.
+	(mule_encode): Run `ccl_driver' with `CCL_MODE_ENCODING'.
+
+	* mule-ccl.c (CCL_WRITE_CHAR): Refer `conversion_mode'.
+	(ccl_driver): Add new argument `conversion_mode'.
+	(Fccl_execute): Run `ccl_driver' with `CCL_MODE_ENCODING'.
+	(Fccl_execute_on_string): Likewise [perhaps it is better to add
+	new optional argument].
+
+	* mule-ccl.h (CCL_MODE_ENCODING): New macro.
+	(CCL_MODE_DECODING): New macro.
+	(ccl_driver): Add new argument `conversion_mode'.
+
+1999-06-15  SL Baur  <steve@miho.m17n.org>
+
+	* mule-charset.c (Fsplit_char): New subr.
+	(Fchar_octet): delete.
+	(syms_of_mule_charset): DEFSUBR it.
+
+1999-06-13  Andy Piper  <andy@xemacs.org>
+
+	* menubar.h: update declarations involving gui_items.
+
+	* lisp.h: declare Lisp_Gui_Item.
+
+	* glyphs.h (struct Lisp_Image_Instance): update type of gui_item.
+
+	* glyphs.c (mark_image_instance): modify for new lisp-based gui_items.
+	(print_image_instance): ditto.
+	(image_instance_equal): ditto.
+	(image_instance_hash): ditto.
+
+	* event-msw.c (mswindows_need_event): assert badly_p status.
+	(mswindows_wnd_proc): modify WM_NOTIFY handling to cope with
+ 	callbacks in tree-view and tab-control widgets.
+	(emacs_mswindows_next_event): modify use of
+ 	mswindows_dequeue_dispatch_event.
+
+	* dialog-msw.c (mswindows_popup_dialog_box): modify for new
+ 	lisp-based gui_items.
+
+	* glyphs-msw.c (mswindows_update_subwindow): update use of
+ 	gui_items.
+	(mswindows_register_gui_item): new function.
+	(mswindows_register_gui_item): fix to use lisp gui_items.
+	(mswindows_widget_instantiate): ditto.
+	(mswindows_button_instantiate): ditto.
+	(add_tree_item): new function to recursively add tree view
+ 	elements.
+	(add_tree_item_list): ditto.
+	(mswindows_tree_instantiate): new function. instantiate tree view
+ 	controls.
+	(add_tab_item): new function to add tabs to a tab control.
+	(mswindows_tab_instantiate): new function. instantiate tab
+ 	controls.
+	(image_instantiator_format_create_glyphs_mswindows): add tree view
+ 	and tab controls.
+	(vars_of_glyphs_mswindows): ditto.
+
+	* glyphs-widget.c (check_valid_item_list_1): allow nested lists in
+ 	item lists.
+	(check_valid_item_list): ditto.
+	(initialize_widget_image_instance): fix to use new lisp gui_item.
+	(widget_instantiate_1): allow the setting of default textwidth in
+ 	characters.
+	(widget_instantiate): change to use new widget_instantiate_1
+ 	signature.
+	(combo_instantiate): ditto.
+	(static_instantiate): ditto.
+	(tab_instantiate): new function for tab widgets.
+	(image_instantiator_format_create_glyphs_widget): add tab and tree
+ 	view widgets.
+
+	* menubar-msw.c (displayable_menu_item): convert to use lisp
+ 	gui_items.
+	(populate_menu_add_item): ditto.
+	(populate_or_checksum_helper): ditto.
+
+	* menubar.c (menu_parse_submenu_keywords): convert to use lisp
+ 	gui_items.
+	(Fmenu_find_real_submenu): ditto.
+
+	* gui.h (struct Lisp_Gui_Item): make gui_item a lisp oebjct.
+
+	* gui.c (gui_item_add_keyval_pair): gui_items are now lisp
+ 	objects, convert functions that use them accordingly.
+	(gui_item_init): ditto.
+	(gui_item_active_p): ditto.
+	(gui_item_selected_p): ditto.
+	(gui_item_included_p): ditto.
+	(gui_item_display_flush_left): ditto.
+	(gui_item_display_flush_right): ditto.
+	(mark_gui_item): ditto.
+	(allocate_gui_item): new function to create a gui_item.
+	(make_gui_item_from_keywords_internal): ditto. create and return a
+ 	gui_item as well as setting keywords.
+	(gui_parse_item_keywords): ditto.
+	(gui_parse_item_keywords_no_errors): ditto.
+	(gui_add_item_keywords_to_plist): new function, not yet used.
+	(gui_item_hash): new function.
+	(gui_item_id_hash): use gui_item_hash.
+	(gui_item_equal): new function.
+	(print_gui_item): new function.
+
+1999-06-11  XEmacs Build Bot <builds@cvs.xemacs.org>
+
+	* XEmacs 21.2.16 is released
+
+1999-06-10  Andy Piper  <andy@xemacs.org>
+
+	* select-msw.c (mswindows_own_selection): only set the clipboard
+ 	if asked.
+	(mswindows_get_foreign_selection): only get the clipboard if
+ 	asked.
+	(mswindows_disown_selection): only disown the clipboard if asked.
+
+1999-06-03  MORIOKA Tomohiko  <tomo@etl.go.jp>
+
+	* file-coding.c (coding_system_from_mask): Use `raw-text' instead
+	of `no-conversion'.
+	(complex_vars_of_mule_coding): Use `raw-text' as the coding-system
+	of coding-category `no-conversion'.
+
+1999-06-03  MORIOKA Tomohiko  <tomo@etl.go.jp>
+
+	* file-coding.c (Qraw_text): New variable.
+	(syms_of_mule_coding): Add new symbol `raw-text'.
+	(complex_vars_of_mule_coding): Add new coding-system `raw-text';
+	define coding-system `binary' independently; define coding-system
+	`no-conversion' as an alias for `raw-text'.
+
+	* file-coding.h (Qraw_text): New variable.
+
+1999-06-08  SL Baur  <steve@xemacs.org>
+
+	* s/decosf4-0.h: Explicitly #undef SYSTEM_MALLOC.
+
+1999-06-06  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* fns.c (MIME_LINE_LENGTH): Default to 72, as in mimencode and
+ 	base64.el.
+	(base64_decode_1): Signal errors instead of returning -1.
+
+1999-06-07  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* mule-charset.c (Fmake_char): Update docstring.
+
+1999-06-07  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* fns.c (Fstring_lessp): Actually increment the Bufbyte pointers.
+
+1999-06-05  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* fns.c (base64_decode_1): Allow and ignore any non-base64
+ 	characters in input.
+
+1999-05-27  Olivier Galibert  <galibert@pobox.com>
+
+	* emacs.c (Fdump_emacs): Add clear_message() lost with the removal
+	of report_pure_usage().
+
+1999-06-04  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* fns.c (Fstring_lessp): Remove O(n^2) under Mule.
+
+1999-06-04  XEmacs Build Bot <builds@cvs.xemacs.org>
+
+	* XEmacs 21.2.15 is released
+
+1999-06-01  Hirokazu FUKUI  <fukui@atesoft.advantest.co.jp>
+
+	* frame.c (Fset_mouse_position):
+	(Fset_mouse_pixel_position):
+	* window.c (Fsplit_window):
+	(Fmove_to_window_line):
+	Fix crash when invoking functions with an already-deleted window
+	argument.
+
+	* indent.c (vertical_motion_1):
+	(vmotion_pixels):
+	(Fvertical_motion_pixels):
+	* window.c (Fwindow_displayed_text_pixel_height):
+	Fix error message when invoking functions with an already-deleted
+	window argument.
+
+1999-06-01  Jan Vroonhof  <vroonhof@math.ethz.ch>
+
+	* sysdep.c (request_sigio_on_device): Guard against glibc
+	2.1's stub streams implementation.
+
+1999-06-03  SL Baur  <steve@xemacs.org>
+
+	* config.h.in:
+	* emacs.c:  Implement x.y.z version numbers
+	From Jan Vroonhof <vroonhof@math.ethz.ch>
+
+1999-05-20  MORIOKA Tomohiko  <tomo@etl.go.jp>
+
+	* mule-charset.c (complex_vars_of_mule_charset): Registry of
+	japanese-jisx0208-1978 should not match with "jisx0208.1983" nor
+	"jisc6226.1983".
+
+1999-06-03  SL Baur  <steve@xemacs.org>
+
+	* frame-x.c:
+	* device-x.c: rename session option to wmcommand.
+	From Oliver Graf <ograf@rhein-zeitung.de>
+
+1999-05-27  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* fns.c (Fsubstring): Don't traverse the same region twice with
+ 	charcount_to_bytecount().
+
+1999-06-03  SL Baur  <steve@steve1.m17n.org>
+
+	* m/alpha.h (SYSTEM_MALLOC): Fix indented preprocessor directive
+	garbage.
+
+	* s/decosf4-0.h: Defining ORDINARY_LINK here is redundant (and it
+	doesn't really work as is implied by the commentary).
+	Don't define SYSTEM_MALLOC so the old GNU malloc can be used.
+
+1999-06-02  SL Baur  <steve@steve1.m17n.org>
+
+	* symsinit.h: Declare vars_of_ntproc.
+	* emacs.c (main_1): Call it.
+
+	* ntproc.c (syms_of_ntproc): Move variable initializations from
+	here ...
+	(vars_of_ntproc): ... to here [new function].
+
+	* file-coding.c (syms_of_file_coding): Rename.
+	(vars_of_file_coding): Ditto.
+	(complex_vars_of_file_coding): Ditto.
+
+	* symsinit.h: Rename *_mule_coding to *_file_coding.
+
+	* emacs.c (main_1): Call them by the proper name.
+
+	* device-msw.c (syms_of_device_mswindows): Move variable
+	initializations from here ...
+	(vars_of_device_mswindows): ... to here.
+
+	* chartab.c (vars_of_chartab): New function.
+
+	* symsinit.h: New function, vars_of_chartab.
+
+	* emacs.c (main_1): Call it.
+
+	* mule-canna.c (syms_of_mule_canna): Move CANNA initialization ...
+	(vars_of_mule_canna): ... to here.
+
+	* mule-ccl.c (vars_of_mule_ccl): New function.  Move variable
+	initializations out of syms_of_mule_ccl.
+
+	* symsinit.h: Declare new function vars_of_mule_ccl.
+
+	* emacs.c (main_1): Call it.
+
+1999-05-27  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* fns.c (base64_decode_1): Ignore whitespace.
+
+1999-05-27  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* mule-charset.c (Fmake_char): Strip the eighth bit off ARG1 and
+ 	ARG2.
+
+1999-05-21  Andy Piper  <andy@xemacs.org>
+
+	* xselect.c: deleted.
+
+	* symsinit.h: declare select initialisation.
+
+	* select.h: new file. declare commonly used select functions and
+ 	variables.
+
+	* select.c: new file. generalised from xselect.c.
+	(clean_local_selection_data): moved from xselect.c.
+	(get_local_selection): ditto. device specific pieces called via a
+ 	devmeth.
+	(handle_selection_clear): ditto.
+	(Fown_selection_internal): renamed and generalised from
+ 	Fx_own_selection_internal. moved from xselect.c.
+	(Fdisown_selection_internal): ditto.
+	(Fselection_owner_p): ditto.
+	(Fselection_exists_p): ditto.
+	(Fget_selection_internal): ditto.
+	(syms_of_select): new function. QXXXX values moved from xselect.c
+	(vars_of_select): new function. selection_converter_alist,
+ 	lost_selection_hooks moved and renamed from xselect.c
+
+	* select-x.c: renamed from xselect.c.
+ 	(x_own_selection): converted to device specific. non-X-specific
+ 	bits moved to select.c.
+	(x_get_foreign_selection): ditto.
+	(x_disown_selection): ditto.
+	(x_selection_exists_p): ditto.
+	(console_type_create_select_x): new function.
+
+	* select-msw.c (mswindows_own_selection): new device method to set
+ 	the clipboard when we 'own' the selection.
+	(mswindows_get_foreign_selection): new device method to get the
+ 	clipboard.
+	(mswindows_disown_selection): new device method to delete the
+ 	selection when we 'disown' it.
+	(console_type_create_select_mswindows): new function.
+
+	* emacs.c (main_1): add select to things to initialise.
+
+	* console.h (struct console_methods): new console methods for
+ 	selection.
+
+	* Makefile.in.in (x_objs): xselect.c renamed to select-x.c
+
+1999-05-20  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* print.c (long_to_string): Install a faster version.
+
+1999-05-16  Andy Piper  <andy@xemacs.org>
+
+	* ntproc.c (syms_of_ntproc): default
+ 	win32-start-process-share-console to t.
+
+1999-05-14  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* config.h.in: Do it here.
+
+	* bytecode.c: Don't define ERROR_CHECK_TYPECHECK here.
+
+1999-05-14  Andy Piper  <andy@xemacs.org>
+
+	* toolbar-msw.c (mswindows_output_toolbar): hash on something
+ 	hashable.
+
+1999-05-14  XEmacs Build Bot <builds@cvs.xemacs.org>
+
+	* XEmacs 21.2.14 is released
+
+1999-05-12  Andy Piper  <andy@xemacs.org>
+
+	* ntproc.c (sys_spawnve): kludge argv[0] in a MS compatible way.
+
+1999-05-11  Gunnar Evermann  <ge204@eng.cam.ac.uk>
+
+	* emacs.c (Frun_emacs_from_temacs): (re)alloc natgs+2 entries for
+	run_temacs_argv array -- fixes random memory corruption crash
+
+1999-05-12  Jan Vroonhof  <vroonhof@math.ethz.ch>
+
+	* window.c (Fcurrent_window_configuration):
+	Save minibuffer height;
+
+	* window.c (set_window_configuration): use it.
+
+1999-05-10  Robert Pluim  <rpluim@bigfoot.com>
+
+	* lisp.h (NNUNGCPRO): fix typo in name of DEBUG_GCPRO version
+
+1999-04-21  Jan Vroonhof  <vroonhof@math.ethz.ch>
+
+	* redisplay.c (redisplay_window): Do not put data
+	in the line start cache if it is not guaranteed to be correct
+
+1999-04-02  Jan Vroonhof  <vroonhof@math.ethz.ch>
+
+	* window.c (struct window_config): Removed frame
+	size members.
+	(window_config_equal): No longer compare frame sizes.
+	(Fset_window_configuration): Resize old top window to fit in the
+	current frame directly, no longer use a fake frame resize.
+	(Fcurrent_window_configuration): No longer save frame size
+
+1999-05-11  Andy Piper  <andy@xemacs.org>
+
+	* ntproc.c (sys_spawnve): actually assign argv[0] instead of the
+ 	first character.
+
+1999-05-10  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* sysdep.c (init_system_name): If gethostname gives a proper
+	domain name, don't look further for one.
+
+1999-05-09  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* symbols.c (Fintern): Avoid frequent XSYMBOL (foo).
+	(Fintern_soft): Accept a symbol argument.
+
+1999-05-06  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* symbols.c (Fintern): ...do it here.
+
+	* lread.c (read_atom): Don't handle keywords here.
+
+1999-05-06  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* symbols.c (reject_constant_symbols): Just use SYMBOL_IS_KEYWORD.
+
+1999-05-03  Olivier Galibert  <galibert@pobox.com>
+
+	* lisp.h (SYMBOL_IS_KEYWORD): A symbol can be a keyword only if it
+	is interned in the main obarray.
+
+1999-04-23  Gunnar Evermann  <ge204@eng.cam.ac.uk>
+
+	* menubar-x.c (pre_activate_callback): set accelerator field in
+	"No menu" entries to nil. Avoid crash in
+	command_builder_operate_menu_accelerator
+
+1999-05-03  Olivier Galibert  <galibert@pobox.com>
+
+	* symeval.h (symbol_value_forward_lheader_initializer): Ditto.
+
+	* lisp.h (DEFUN): Fix lrecord header initialisation.
+
+1999-05-02  Andy Piper  <andy@xemacs.org>
+
+	* objects-msw.c (mswindows_font_instance_truename): add a ';'.
+
+	* ntproc.c (sys_kill): cast using MS mandated defines.
+
+1999-04-29  Andy Piper  <andy@xemacs.org>
+
+	* m/intel386.h: remove redundant definitions.
+
+	* s/mingw32.h: new header for mingw32.
+
+	* unexnt.c: (open_input_file): function moved to nt.c.
+	(close_file_data): ditto.
+	(rva_to_section): function moved to ntproc.
+
+	* symsinit.h: declare syms_of_ntproc();
+
+	* objects-msw.c (mswindows_font_instance_truename): new function.
+
+	* ntproc.c: remove many warnings.
+	(_sys_read_ahead): moved from nt.c and made static.
+	(rva_to_section): moved from unexnt.c but not defined under
+ 	mingw32.
+	(win32_executable_type): implement what we can for mingw32
+ 	headers.
+	(sys_spawnve): fix bad MULE/GCPRO bug in filename handling.
+
+	* ntheap.h: remove declarations of functions that are now static.
+
+	* ntheap.c: support static heap.
+
+	* nt.h: conditionalise X_OK definition.
+
+	* nt.c: eliminate many warnings and support mingw32.
+	(open_input_file): function moved from unexnt.c and made static
+	(close_file_data): ditto.
+	(_sys_read_ahead): moved to ntproc.c
+
+	* emacs.c: make sure syms_of_ntptroc gets called under windows.
+
+	* console-msw.h: support mingw32.
+	* getloadavg.c: ditto.
+	* ntplay.c: ditto.
+	* sysdep.c: ditto.
+	* sysdir.h: ditto.
+	* systime.h: ditto.
+	* systty.h: ditto.
+
+	* config.h.in: dont turn on DEBUG_ENCAPSULATION by default because
+ 	some systems don't have all of the encapsulated system calls.
+
+	* callproc.c: warning elimination.
+	* dired-msw.c: ditto.
+	* process-nt.c: ditto.
+	* realpath.c: ditto.
+
+	* Makefile.in.in: tweak : and ; for building under mswindows.
+
+1999-04-26  Michael Harnois  <mharnois@willinet.net>
+
+	* eldap.c (allocate_ldap): Adapt to the new semantics of
+	alloc_lcrecord_type().
+
+1999-03-16  MORIOKA Tomohiko  <tomo@etl.go.jp>
+
+	* file-coding.c (DECODE_HANDLE_END_OF_CONVERSION): fixed.
+
+1998-09-04  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
+
+	* Delete mule-coding.c and mule-coding.h because they are not
+	used.
+
+1999-04-22  Gunnar Evermann  <ge204@eng.cam.ac.uk>
+
+	* objects.c (print_font_instance): Check for NILP(f->device),
+	i.e. Vthe_null_font_instance.
+	(font_instance_truename_internal): ditto.
+	(Ffont_instance_properties): ditto.
+
+1999-04-22  Olivier Galibert  <galibert@pobox.com>
+
+	* lrecord.h (DECLARE_LRECORD): lrecord_implementation isn't an
+	array anymore.
+
+1999-04-22  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* Makefile.in.in (tests): Don't mention tests explicitly -- makes
+	it easier to add new ones.
+
+1999-04-22  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* symbols.c (reject_constant_symbols): Ditto.
+	(init_symbols_once_early): Ditto.
+
+	* print.c (print_symbol): Don't use ->obarray.
+
+	* symbols.c (Funintern): Ditto.
+
+	* alloc.c (Fmake_symbol): Don't set ->obarray.
+
+	* lisp.h (struct Lisp_Symbol): Removed .obarray field.
+
+	* symbols.c (init_symbols_once_early): Removed
+ 	Vpure_uninterned_symbol_table.
+	(Fintern): Don't store to ->obarray field.
+
+1999-04-22  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* data.c (vars_of_data): Default debug_issue_ebola_notices to 0.
+	(eq_with_ebola_notice): Remove abracadabra support.
+
+1999-04-11  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
+
+	* eldap.c (Fldap_search_internal): Add a new parameter `withdn' to
+ 	retrieve the distinguished names of entries
+
+1999-03-08  Martin Buchholz  <martin@xemacs.org>
+
+	* lread.c (read_escape): Make hex escapes read only two hex digits.
+
+1999-04-05  Olivier Galibert  <galibert@pobox.com>
+
+	* Makefile.in.in: Remove puresize-adjust.h and recursive makes.
+	* make-src-depend: Remove puresize-adjust.h.
+	* src-headers: Remove puresize-adjust.h.
+	* config.h.in: Kill everything purespace/gung-ho related.
+
+	* dbxrc: Make gung-ho mandatory.
+	* gdbinit: Ditto.
+
+	* lrecord.h: Make gung-ho mandatory.  Remove pure flag and add
+ 	c_readonly and lisp_readonly.  Remove implementation arrays.
+	(C_READONLY_RECORD_HEADER_P): Added.
+	(LISP_READONLY_RECORD_HEADER_P): Added.
+	(SET_C_READONLY_RECORD_HEADER): Added.
+	(SET_LISP_READONLY_RECORD_HEADER): Added.
+
+	* lisp.h: Kill everything purespace/non gung-ho related.
+	(CHECK_C_WRITEABLE): Added.
+	(CHECK_LISP_WRITEABLE): Added.
+	(C_READONLY): Added.
+	(LISP_READONLY): Added.
+
+	* lisp-union.h: Make gung-ho mandatory.
+	* lisp-disunion.h: Ditto.
+
+	* alloc.c: Kill everything purespace/non  gung-ho related. Fix all
+ 	set_lheader_implementation calls.
+	(c_readonly): Added.
+	(lisp_readonly): Added.
+	(make_string_nocopy): Added.
+	(Fpurecopy):  Changed to do  nothing.   Kept the old documentation
+ 	for reference purposes for the next patches.
+	(sweep_lcrecords_1): Don't free C readonly lcrecords.
+	(sweep_bit_vectors_1): Don't free C readonly bitvectors.
+	(SWEEP_FIXED_TYPE_BLOCK): Don't free C readonly lrecords.
+
+	* fns.c: Make gung-ho mandatory.
+ 	(Fput): CHECK_IMPURE -> CHECK_LISP_WRITEABLE.
+	(Fremprop): Ditto.
+	(Ffillarray): Ditto.
+
+	* data.c: Make gung-ho mandatory.
+	(pure_write_error): Removed.
+	(c_write_error): Added.
+	(lisp_write_error): Added.
+	(Fsetcar): CHECK_IMPURE -> CHECK_LISP_WRITEABLE.
+	(Fsetcdr): Ditto.
+	(Faset): Ditto.
+
+	* symbols.c: Make gung-ho mandatory.  make_pure_pname ->
+ 		  make_string or make_string_nocopy.  Fix various
+	 	  alloc_lcrecord_type.
+
+	* lread.c: Remove everything purespace related.
+	(Flocate_file_clear_hashing): purified -> c_readonly.
+	(locate_file): Ditto.
+	(read_atom): make_pure_pname -> make_string.
+
+	* emacs.c (Frun_emacs_from_temacs): Remove purespace stats
+ 		  reporting.
+	(Fdump_emacs): Ditto.
+
+	* print.c (print_internal): Make gung-ho mandatory.
+	* ntheap.c (sbrk): Ditto.
+	* mem-limits.h (EXCEEDS_LISP_PTR): Ditto
+	* symeval.h (symbol_value_forward_lheader_initializer): Ditto.
+
+	* sheap.c (more_static_core): Remove puresize-adjust.h from
+ 		  message.
+
+	* syntax.c (complex_vars_of_syntax): make_pure_string ->
+ 		  make_string_nocopy.
+	* keymap.c (make_keymap): Fix alloc_lcrecord_type.
+	(vars_of_keymap): make_pure_string -> make_string_nocopy.
+	* events.c (deinitialize_event): Fix set_lheader_implementation.
+	(zero_event): Ditto.
+	* specifier.c (make_specifier_internal): Fix alloc_lcrecord.
+	* menubar-x.c (set_frame_menubar): Fix alloc_lcrecord_type.
+	* mule-charset.c (make_charset): Ditto.
+	* console.c (allocate_console): Ditto.
+	(complex_vars_of_console): Ditto.
+	* file-coding.c (allocate_coding_system): Ditto.
+	* device.c (allocate_device): Ditto
+	* gui-x.c (gcpro_popup_callbacks): Ditto.
+	* extents.c (allocate_extent_auxiliary): Ditto.
+	(allocate_extent_info): Ditto.
+	(copy_extent): Ditto.
+	* glyphs.c (allocate_image_instance): Ditto.
+	(allocate_glyph): Ditto.
+	* frame.c (allocate_frame_core): Ditto.
+	* database.c (allocate_database): Ditto.
+	* tooltalk.c (make_tooltalk_message): Ditto.
+	(make_tooltalk_pattern): Ditto.
+	* rangetab.c (Fmake_range_table): Ditto.
+	(Fcopy_range_table): Ditto.
+	* process.c (make_process_internal): Ditto.
+	* chartab.c (Fmake_char_table): Ditto.
+	(make_char_table_entry): Ditto.
+	(copy_char_table_entry): Ditto.
+	(Fcopy_char_table): Ditto.
+	* elhash.c (make_general_lisp_hash_table): Ditto.
+	(Fcopy_hash_table): Ditto.
+	* buffer.c (allocate_buffer): Ditto.
+	(complex_vars_of_buffer): Ditto.
+	* event-stream.c (allocate_command_builder): Ditto.
+	* objects.c (Fmake_color_instance): Ditto.
+	(Fmake_font_instance): Ditto.
+	(vars_of_objects): Ditto.
+	* toolbar.c (update_toolbar_button): Ditto.
+	* window.c (allocate_window): Ditto.
+	(make_dummy_parent): Ditto.
+	(Fcurrent_window_configuration): Fix alloc_lcrecord.
+	(vars_of_window): Fix make_lcrecord_list.
+	* faces.c (allocate_face): Fix alloc_lcrecord_type. pure_list ->
+ 		  Flist.
+	* lstream.c (Lstream_new): Fix make_lcrecord_list.
+	* opaque.c (make_opaque): Fix alloc_lrecord.
+	(make_opaque_list): Fix alloc_lrecord_type.
+
+1999-04-19  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* process.c (Fstart_process_internal): Ditto.
+
+	* ntproc.c (sys_spawnve): Use Vlisp_EXEC_SUFFIXES when calling
+ 	locate_file().
+
+	* glyphs-x.c (x_locate_pixmap_file): Ditto.
+
+	* glyphs-msw.c (mswindows_locate_pixmap_file): Fix call to
+ 	locate_file().
+
+	* emodules.c (vars_of_module): New variable Vmodule_extensions.
+	(emodules_load): Use it when calling locate_file().
+
+	* emacs.c (main_1): Use Vlisp_EXEC_SUFFIXES when calling
+ 	locate_file().
+
+	* callproc.c: Vlisp_EXEC_SUFFIXES: New variable.
+	(vars_of_callproc): Initialize it.
+	(Fcall_process_internal): Use it when calling locate_file().
+
+	* alloc.c (disksave_object_finalization): Use
+ 	Flocate_file_clear_hashing().
+
+	* lread.c (Flocate_file_clear_hashing): Clear all hasing when
+	given `t' as argument.
+
+1999-04-18  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* lread.c (locate_file): Expand `pathel' when appropriate.
+	(Flocate_file_clear_hashing): Expand path elements.
+	(Flocate_file_clear_hashing): Use Vlocate_file_hash_table.
+
+	* dired.c (make_directory_hash_table): Create the hash-table only
+	if the directory open is successful.
+
+	* lread.c (decode_mode_1): New function.
+	(decode_mode): Ditto.
+	(Flocate_file): Use them.
+	(Flocate_file): Expand FILENAME.
+	(locate_file_map_suffixes): New function.
+	(locate_file_in_directory_mapper): New function.
+	(locate_file_in_directory): Use locate_file_in_directory_mapper()
+ 	and locate_file_map_suffixes().
+	(locate_file_construct_suffixed_files): Use
+ 	locate_file_map_suffixes().
+	(locate_file_without_hash): Don't GCPRO path.
+	(Flocate_file_clear_hashing): Use EXTERNAL_LIST_LOOP.
+	(syms_of_lread): Remove Qlocate_file_hash_table.
+	(locate_file_find_directory_hash_table): Use
+ 	Vlocate_file_hash_table.
+	(locate_file_refresh_hashing): Ditto.
+
+	* lread.c: Renamed read_objects to Vread_objects.
+
+1999-04-16  Olivier Galibert  <galibert@pobox.com>
+
+	* mule-charset.c: Generally resync with fsf 20.3 charset
+ 	interface.
+	(make_charset): Add long and short name.  Use id instead of
+ 	leading byte.
+	(Fmake_charset): Ditto.
+	(Fmake_reverse_direction_charset): Ditto.
+	(Fcharset_property): Ditto.
+	(Fcharset_short_name): Added.
+	(Fcharset_long_name): Added.
+	(Fcharset_description): Renamed from charset-doc-string.
+	(syms_of_mule_charset): Synced symbols.
+	(complex_vars_of_mule_charset): Synced charsets.
+
+	* mule-charset.h: Removed leading byte (uses id instead), added
+ 	short and long name.
+
+1999-04-15  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* file-coding.c (Fdefine_coding_system_alias): New function.
+
+1999-04-08  Olivier Galibert  <galibert@pobox.com>
+
+	* mule-charset.c (complex_vars_of_mule_charset): Allow all iso8859
+ 	and -ascii fonts for displaying ascii instead of iso8859-1 only.
+
+1998-12-14  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* extents.c (set_extent_glyph_1): Make sure that the glyph we
+	attach to the extent is valid.
+
+1998-12-12  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* dired.c (user_name_completion): Mule-ize.
+	(user_name_completion): Use xmalloc/xrealloc/xfree.
+	(user_name_completion): Use DO_REALLOC.
+	(user_name_completion): Cut down the number of static variables;
+ 	use a structure.
+	(user_name_completion): Username completion is always
+ 	case-sensitive.
+
+1998-12-06  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* fns.c (base64_decode_1): Remove COUNTER.
+	(base64_decode_1): Accept CRLF in addition to CR.
+	(base64_decode_1): Disallow a stray character after final EOF; the
+	check was probably a remnant of buggy recode code.
+
+1998-12-05  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* fns.c (init_provide_once): Provide `base64'.
+
+1998-12-04  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* fns.c (XMALLOC_UNBIND): Include SPECCOUNT argument, for clarity.
+	(Fbase64_encode_region): If buffer is read-only, bail out early.
+	(Fbase64_decode_region): Ditto.
+	(Fbase64_encode_region): Initialize SPECCOUNT to pacify the
+ 	compiler.
+	(Fbase64_encode_string): Ditto.
+	(Fbase64_decode_region): Ditto.
+	(Fbase64_decode_string): Ditto.
+
+1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* dired.c (Fdirectory_files): Remove redundant code.
+
+1999-03-05  Philip Aston  <philipa@parallax.co.uk>
+
+	* frame-msw.c Make raise-frame restore minimised windows.
+
+1999-03-05  Philip Aston  <philipa@parallax.co.uk>
+
+	* device-msw.c: Fix DEFVAR format - Death to phantom quote, and
+ 	add magic newline.
+
+1999-03-05  Philip Aston  <philipa@parallax.co.uk>
+
+	* toolbar-msw.c Consider captions when deciding whether to rebuild
+ 	toolbar. This fixes the initial toolbar display for those of us
+ 	who don't like captions. These patches applied by Andy Piper.
+
+1999-03-12  XEmacs Build Bot <builds@cvs.xemacs.org>
+
+	* XEmacs 21.2.13 is released
+
+1999-03-12  SL Baur  <steve@xemacs.org>
+
+	* file-coding.c: Guard ucs table initialization with ifdef MULE.
+
+1999-03-10  Stephen J. Turnbull  <turnbull@sk.tsukuba.ac.jp>
+
+	* file-coding.c:  docstring and comment improvements.
+	(decode_ucs4)  flag possible data loss with comment.
+
+1999-03-10  Martin Buchholz  <martin@xemacs.org>
+
+	* file-coding.c (Fset_ucs_char): add CHECK_INT, CHECK_CHAR
+	(ucs_to_char):
+	(Fucs_char):
+	(Fset_char_ucs):
+	(decode_coding_ucs4):
+	(encode_coding_ucs4):
+	(detect_coding_utf8):
+	(decode_coding_utf8):
+	(encode_utf8):
+	(encode_coding_utf8):
+	Add CHECK_* macros where needed to avoid crashes.
+	#ifdef out all composite character support using
+	#ifdef ENABLE_COMPOSITE_CHARS
+	Use normal XEmacs coding standards.
+	Fix docstrings.
+	Remove CODING_STREAM_COMPOSE, CODING_STREAM_DECOMPOSE.
+
+1998-09-08  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
+
+	* file-coding.c (make-coding-system): Add description about
+	`ucs-4' and `utf-8'.
+	(detection_state): Modify to implement ucs-4 and utf-8.
+	(detect_coding_type): Likewise.
+	(detect_coding_ucs4): New implementation.
+	(detect_coding_utf8): New implementation.
+	(encode_utf8): fixed.
+	(syms_of_mule_coding): Rename `ucs4' and `utf8' to `ucs-4' and
+	`utf-8'.
+
+1998-09-08  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
+
+	* file-coding.c (mule_char_to_ucs4): Encode 94x94 chars in ISO
+	2022 registry to private area.
+
+1998-09-07  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
+
+	* file-coding.c (encode_utf8): New function.
+	(encode_coding_utf8): New implementation.
+
+1998-09-07  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
+
+	* file-coding.c (ucs_to_mule_table): New variable; abolish
+	`Vucs_to_mule_table'
+	(mule_to_ucs_table): renamed from `Vmule_to_ucs_table'.
+	(set-ucs-char): New function.
+	(ucs_to_char): New function.
+	(ucs-char): New function.
+	(set-char-ucs): New function.
+	(char-ucs): New function.
+	(decode_ucs4): Use `ucs_to_char'.
+	(complex_vars_of_mule_coding): Abolish `ucs-to-mule-table' and
+	`mule-to-ucs-table'.
+
+1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
+
+	* chartab.h: EXFUN `Fget_char_table'.
+
+	* file-coding.c (encode_ucs4): New function.
+	(encode_coding_ucs4): Use `encode_ucs4'.
+
+1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
+
+	* file-coding.c (decode_coding_ucs4): New implementation.
+
+1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
+
+	* file-coding.c (decode_coding_ucs4): fixed.
+
+	* file-coding.c (Vmule_to_ucs_table): New variable.
+	(mule_char_to_ucs4): New function.
+	(encode_coding_ucs4): New implementation.
+	(complex_vars_of_mule_coding): Define variable
+	`mule-to-ucs-table'.
+
+1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
+
+	* file-coding.c (decode_coding_utf8): New implementation.
+
+1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
+
+	* file-coding.c (decode_coding_utf8): fixed.
+
+1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
+
+	* file-coding.c (Vucs_to_mule_table): New variable.
+	(decode_ucs4): Refer `Vucs_to_mule_table'.
+	(complex_vars_of_mule_coding): Define variable
+	`ucs-to-mule-table'.
+
+1998-09-04  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
+
+	* file-coding.c (detect_coding_ucs4): New function (not
+	implemented yet).
+	(decode_coding_ucs4): New function.
+	(encode_coding_ucs4): New function (not implemented yet).
+	(detect_coding_utf8): New function (not implemented yet).
+	(decode_coding_utf8): New function.
+	(encode_coding_utf8): New function (not implemented yet).
+	(make-coding-system): New type `ucs4' and `utf8'.
+	(coding-system-type): Likewise.
+	(detection_state): Add `ucs4' and `utf8'.
+	(detect_coding_type): Likewise.
+	(mule_decode): Use `decode_coding_ucs4' and `decode_coding_utf8'.
+	(mule_encode): Use `encode_coding_ucs4' and `encode_coding_utf8'.
+	(decode_ucs4): New function (very incomplete).
+	(syms_of_mule_coding): Add `ucs4' and `utf8'.
+
+	* file-coding.h: Add definitions for UCS-4 and UTF-8.
+
+1999-03-08  Martin Buchholz  <martin@xemacs.org>
+
+	* mule-charset.c:
+	(non_ascii_valid_char_p):
+	(lookup_composite_char):
+	(composite_char_string):
+	(make-composite-char):
+	(composite-char-string):
+	(syms_of_mule_charset):
+	(complex_vars_of_mule_charset):
+	* mule-charset.h (LEADING_BYTE_COMPOSITE):
+	(CHAR_LEADING_BYTE):
+	(MAKE_CHAR):
+	* file-coding.h (CODING_STATE_COMPOSITE):
+	(CODING_STATE_ISO2022_LOCK):
+	(iso_esc_flag):
+	(LEADING_BYTE_COMPOSITE):
+	* file-coding.c (struct iso2022_decoder):
+	(decoding_closer):
+	(reset_iso2022):
+	(parse_iso2022_esc):
+	(encode_coding_iso2022):
+	#ifdef out all composite character support using
+	#ifdef ENABLE_COMPOSITE_CHARS
+
+	* alloc.c: Define lrecord_coding_system only if ! FILE_CODING
+
+1999-03-04  Takeshi YAMADA <yamada@cslab.kecl.ntt.co.jp>
+
+	* fns.c (Fbase64_encode_string): Calculate `allength' in the same
+	way of `Fbase64_encode_region'.
+
+1999-02-18  Katsumi Yamaoka   <yamaoka@jpl.org>
+
+	* fns.c (base64_encode_1): Don't add a newline at the tail.
+
+1999-03-08  Andy Piper  <andy@xemacs.org>
+
+	* menubar-msw.c (displayable_menu_item): correct off-by-one &
+	handling.
+
+1999-03-07  Martin Buchholz  <martin@xemacs.org>
+
+	* console-stream.h (struct stream_console):
+	* event-unixoid.c (event_stream_unixoid_select_console):
+	(event_stream_unixoid_unselect_console):
+	* print.c (Fexternal_debugging_output):
+	* sysdep.c (reset_one_device):
+	* console-stream.c (stream_init_console):
+	(stream_delete_console):
+	(allocate_stream_console_struct): move into stream_init_console.
+	(free_stream_console_struct): move into stream_delete_console.
+	Use `fd' only for file descriptors.
+	Therefore, rename members of struct stream_console.
+
+	* systime.h: Unix98 says sys/time.h should define select(), but
+	some systems define that in unistd.h.  So include that file always.
+
+	* glyphs.h (MAYBE_IIFORMAT_METH): Don't use leading `_'.  Avoid
+	multiple evaluation of first arg.  Do proper do {} while (0) wrapping.
+	(HAS_IIFORMAT_METH_P): Prevent macro from being used in
+	non-boolean context
+	(MAYBE_IIFORMAT_DEVMETH): Use standard internal macro naming convention.
+
+	* EmacsShell.c:
+	* balloon_help.c:
+	Add #include <stdio.h>.
+	Some versions of assert.h use printf() without #include'ing stdio.h
+
+	* free-hook.c (blocktype): Add gcpro5_type to blocktype.
+	(log_gcpro): Remove unused variable FRAME.
+	(show_gcprohist): Ansify.
+	Comment the #endif's
+
+	* frame-x.c (x_delete_frame): Don't use FRAME_X_SHELL_WIDGET(f)
+	after it's just been XtDestroy'ed!
+
+1999-02-18  Martin Buchholz  <martin@xemacs.org>
+
+	* opaque.c (print_opaque):
+	(sizeof_opaque):
+	(equal_opaque):
+	(hash_opaque):
+	Egcs 1.1.1 seems to have a bug where
+	INTP (p->size_or_chain)
+	will crash XEmacs.  Fix by introducing intermediate variable.
+
+	* sound.c (Fdevice_sound_enabled_p): Fix compiler warning.
+
+	* dired.c (Fdirectory_files):
+	(Ffile_name_completion):
+	(Ffile_name_all_completions):
+	(file_name_completion):
+	- Use `directory' instead of `dirname' to sync with FSF Emacs and
+	avoid compiler warnings.
+	- Fix up docstrings so that C variables match documentation.
+
+1999-03-05  Martin Buchholz  <martin@xemacs.org>
+
+	* alloc.c: (garbage_collect_1): Reorg code to make scope of local
+	variables as small as possible to help out the compiler and the maintainer.
+
+	* alloc.c: (disksave_object_finalization):
+	Set all the *-load-path variables to
+	nil, not just load-path itself.  This gets the locate-file hash
+	tables garbage collected BEFORE dump, and has the side effect of
+	preventing crashes on OSF4.0+egcs.
+
+	* alloc.c:
+	* gdbinit:
+	* dbxrc:
+	- Clean up gdb/dbx debugging support.
+	- Storing an EMACS_INT in an enum is not 64-bit clean!
+	- So change the enum to a set of separate variables.
+	- Add test cases to help debug the debugging support!
+	- Add `lisp-shadows' and `run-temacs' targets for dbx.
+	- Both dbx and gdb have been tested now.
+
+1999-03-05  XEmacs Build Bot <builds@cvs.xemacs.org>
+
+	* XEmacs 21.2.12 is released
+
+1999-02-16  Kazuyuki IENAGA  <ienaga@jsys.co.jp>
+
+	* device-x.c: Support to find best visual without flashing.
+
+1999-03-02  Paul Keusemann  <pkeusem@visi.com>
+
+	* database.c (berkdb_map): Add flags argument to cursor call (must
+	  be 0 according to docs) required for Berkeley DB 2.6.4 and later.
+
+1999-03-03  Martin Buchholz  <martin@xemacs.org>
+
+	* hash.c:
+	* hash.h:
+	General cleanup.  Get free-hook.c working again.
+	Remove unused functions:
+	make_strings_hash_table, copy_hash, expand_hash_table.
+
+	* malloc.c:
+	* mem-limits.h:
+	Always use new ANSI-style function prototypes.
+
+	* unexalpha.c (unexec): Never use implicit int.
+
+	* sgiplay.c (close_sound_file):
+	(play_sound_file):
+	(restore_audio_port):
+	(play_sound_data):
+	(audio_initialize):
+	(play_internal):
+	(drain_audio_port):
+	(write_mulaw_8_chunk):
+	(write_linear_chunk):
+	(write_linear_32_chunk):
+	(initialize_audio_port):
+	(open_audio_port):
+	(set_channels):
+	(set_output_format):
+	(adjust_audio_volume):
+	(get_current_volumes):
+	(parse_snd_header):
+	Always use new ANSI-style function prototypes.
+	Use unistd.h for missing prototypes.
+
+	* unexelfsgi.c (round_up):
+	(find_section):
+	(unexec): Always use new ANSI-style function prototypes
+
+	* elhash.c (struct Lisp_Hash_Table): rename golden to golden_ratio
+
+	* console.h (struct console_methods): Always use full ANSI prototypes
+
+	* emacs.c (__sti__iflPNGFile_c___): Always use full ANSI prototypes
+
+1999-03-02  Andy Piper  <andy@xemacs.org>
+
+	* event-stream.c (init_event_stream): make sure native mswindows
+ 	gets an appropriate event loop.
+
+1999-02-22  Andy Piper  <andy@xemacs.org>
+
+	* frame-msw.c (mswindows_make_frame_visible): use SW_SHOW rather
+	than SW_SHOWNORMAL to prevent resizing of maximised frames.
+	(mswindows_raise_frame): remove comment.
+
+1999-03-01  XEmacs Build Bot <builds@cvs.xemacs.org>
+
+	* XEmacs 21.2.11 is released
+
+1999-02-25  SL Baur  <steve@xemacs.org>
+
+	* mule-charset.c (Qleading_byte): New variable to implement
+	charset-leading-byte function.
+	(Fcharset_property): Use it.
+	(syms_of_mule_charset): Initialize it.
+	From Kazuyuki IENAGA <ienaga@jsys.co.jp>
+
+1999-02-17  Kazuo Oishi <oishi@ae.agr.yamaguchi-u.ac.jp>
+
+	* glyphs-x.c (cononvert_EImage_to_XImage): correct
+	bytes per pixel counting.
+
+1999-02-15  Andy Piper  <andy@xemacs.org>
+
+	* s/cygwin32.h (BROKEN_SIGIO): don't define this as it causes
+	major lockups.
+
+1999-02-16  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
+
+	* fns.c (Fbase64_encode_string): New optional argument
+	`NO_LINE_BREAK'.
+
+1999-02-16  Martin Buchholz  <martin@xemacs.org>
+
+	* gdbinit:  Fix up commands to run temacs.  Add lisp-shadows command.
+	* alloc.c (xcalloc):  undef xcalloc, just like xmalloc
+
+1999-02-10  Martin Buchholz  <martin@xemacs.org>
+
+	* s/bsdos4.h: New file.  Port to BSDI BSD/OS 4.0.
+	* xintrinsic.h:  Redo CONST support for X11 R4 compatibility.
+
+1999-02-05  XEmacs Build Bot <builds@cvs.xemacs.org>
+
+	* XEmacs 21.2.10 is released
+
+1999-02-02  Gleb Arshinov  <gleb@cs.stanford.edu>
+
+	* process-nt.c (nt_send_process):
+ 	Fix for process-send-region/process-send-string breaking when size
+	of the input > 128 chars: change maximum chunk size for process
+	stream from 512 to 128, thus guaranteeing that ntpipe_shove_writer
+	succeeds.
+
+1999-02-02  XEmacs Build Bot <builds@cvs.xemacs.org>
+
+	* XEmacs 21.2.9 is released
+
+1999-01-30  Martin Buchholz  <martin@xemacs.org>
+
+	* bytecode.c (funcall_compiled_function): Call
+	UNBIND_TO_GCPRO instead of UNBIND_TO_GCPRO_VARIABLES_ONLY.
+
+	* backtrace.h (UNBIND_TO_GCPRO_VARIABLES_ONLY):
+	#ifdef 0 out unused macro.
+
+1999-01-27  Martin Buchholz  <martin@xemacs.org>
+
+	* gui.c (gui_parse_item_keywords_internal): Make static.
+
+1999-01-21  Andy Piper  <andy@xemacs.org>
+
+	* glyphs-msw.c: add xface support.
+	(mswindows_xface_instantiate): new function copied from glyphs-x.c
+	(image_instantiator_format_create_glyphs_mswindows): do device
+ 	specific initialisation for xfaces.
+	(xbm_create_bitmap_from_data): line data must be padded to a word
+ 	boundary.
+
+	* glyphs-x.c (xface_validate): moved to glyphs.c
+	(xface_normalize): ditto.
+	(xface_possible_dest_types): ditto.
+	(image_instantiator_format_create_glyphs_x): do device specific
+ 	initialisation for xfaces.
+
+	* glyphs.h: declare xface symbol.
+
+	* glyphs.c: move generic xface support here.
+	(xface_validate): moved from glyphs-x.c
+	(xface_normalize): ditto.
+	(xface_possible_dest_types): ditto.
+	(image_instantiator_format_create): xface declarations moved from
+ 	glyphs-x.c.
+
+1999-01-14  Adrian Aichner  <adrian@xemacs.org>
+
+	* event-stream.c (vars_of_event_stream): Fixing documentation.
+
+1999-01-17  Gunnar Evermann  <ge204@eng.cam.ac.uk>
+
+	* glyphs-eimage.c (gif_instantiate): Correct handling of
+	interlaced gifs to avoid writing past the end of the eimage
+	buffer.
+
+1999-01-13  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* search.c (Freplace_match): Handle single backslash at end of
+	NEWTEXT correctly.
+
+1999-01-12  William M. Perry  <wmperry@aventail.com>
+
+	* eldap.c (Fldap_open): slow down interrupts around ldap_open to
+	  avoid connection errors.
+
+1999-01-12  Andy Piper  <andy@xemacs.org>
+
+	* redisplay-output.c (redisplay_update_line): backout change that
+ 	shouldn't have gone ine.
+
+1999-01-09  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
+
+	* eldap.c (vars_of_ldap): Do no provide `ldap' here since it may
+ 	collide with ldap.el
+
+1999-01-11  Andy Piper  <andy@xemacs.org>
+
+	* redisplay.h (DISPLAY_LINE_HEIGHT): new macro.
+	(DISPLAY_LINE_YPOS): new macro.
+
+	* redisplay-msw.c (mswindows_output_string): use it.
+	(mswindows_output_pixmap): ditto.
+	(mswindows_output_display_block): ditto.
+
+	* redisplay-output.c (redisplay_output_display_block): new
+ 	function. just call the devmeth, maybe insert some generic code
+ 	here later.
+	(compare_display_blocks): use it.
+	(output_display_line): ditto.
+	(redisplay_unmap_subwindows_maybe): new function. potentially
+ 	unmap subwindows in the given area.
+
+	* glyphs.c (reset_subwindow_cachels): unmap subwindows that we are
+ 	resetting.
+
+1999-01-10  J. Kean Johnston  <jkj@sco.com>
+
+	* Makefile.in.in: Set value of moduledir
+	- Changed DUMPENV to include $(MODULEPATH)
+	- Added install rule to install header files for use by ellcc.
+
+	* config.h.in: Added INHIBIT_SITE_MODULES
+	- Added HAVE__DLERROR
+	- Added HAVE_DLFCN_H
+	- Added DLSYM_NEEDS_UNDERSCORE
+
+	* dll.c: Removed.
+
+	* emodules.c: New file containing dynamic loading code.
+
+	* emodules.h: New file.
+
+	* emacs.c: Added variables Vmodule_directory,
+	Vsite_module_directory, Vconfigure_module_directory and
+	Vconfigure_site_module_directory.
+	- (main_1): Added new variable inhibit_site_modules and command
+	line options `-no-site-modules' and `--no-site-modules'.
+	- (main_1): Call syms_of_module() instead of syms_of_dll().
+	- (main_1): Call vars_of_module().
+	- (vars_of_emacs): Introduce inhibit-site-modules,
+	module-directory, configure-module-directory,
+	site-module-directory, and configure-site-module-directory to the
+	Lisp reader.
+
+	* lisp.h: Declare load_module and list_modules, as well as
+	Vmodule_directory, Vsite_module_directory,
+	Vconfigure_module_directory and Vconfigure_site_module_directory.
+
+	* paths.h.in: Added PATH_MODULESEARCH and PATH_SITE_MODULES.
+	- Added correct support for site-lisp directory.
+
+	* symbols.c (defsubr): Modified to allow modules to add new subrs
+	after dump time.
+	- (defsubr_macro): Same.
+	- (defvar_magick): Only use purespace when not initialized, so
+	that loaded modules can still add symbols.
+
+	* symsinit.h: Add definitions for syms_of_module(),
+	vars_of_module().  Removed syms_of_dll().
+
+	* sysdll.c: Include dlfcn.h if HAVE_DLFCN_H is defined.
+	- (dll_variable): Take DLSYM_NEEDS_UNDERSCORE into account.
+	- (dll_error): use _dlerror() if HAVE__DLERROR is defined.
+
+	* s/sco5-shr.h (C_SWITCH_SYSTEM): Correct for modern gcc and
+	explicitly pass -belf for native cc.
+
+	* s/sco5.h (LIB_GCC): Use -print-libgcc-file-name instead of
+	hard-coding the library name.
+
+1999-01-01    <martin@xemacs.org>
+
+	* device-x.c (Fx_set_font_path):
+	Add proper cast to permit compilation under C++.
+
+	* buffer.c (directory_is_current_directory):
+	Add proper casts to permit compilation under C++.
+
+1998-12-30  Damon Lipparelli  <lipp@primus.com>
+
+	* event-msw.c (mswindows_wnd_proc):
+	  Fixed failure when building with MSVC 5.
+
+1998-12-29  Martin Buchholz  <martin@xemacs.org>
+
+	* file-coding.c (decode_coding_iso2022):
+	- Prevent crash when decoding ISO7/Lock detected files
+	- the usual martin fiddling
+
+1998-12-29  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+
+	* event-msw.c:
+	  glyphs-msw.c:
+	  Fixed failures when building with MSVC.
+	* unexnt.c (dump_bss_and_heap):
+	  Removed compiler warning by removing bss_data variable.
+
+1998-12-18  Jim Radford  <radford@robby.caltech.edu>
+
+	* device-x.c (Fx_set_font_path, Fx_get_font_path): New functions
+ 	so that packages that distribute their own fonts can access them.
+
+1998-12-28  Andy Piper  <andy@xemacs.org>
+
+	* glyphs-msw.c (mswindows_button_instantiate): cope with buttons
+ 	that have an image provided.
+
+	* glyphs.h: add Q_image decl.
+
+	* glyphs-widget.c new functionality allowing images in
+ 	widgets.
+ 	(check_valid_glyph_or_image): new function to validate
+ 	glyphs passed in through :image.
+	(widget_normalize): new function. convert :image parameters into
+ 	real glyphs if not already so.
+	(widget_instantiate_1): mess with size parameters to be similar to
+ 	:image if provided.
+	(syms_of_glyphs_widget): new keyword :image.
+	(image_instantiator_format_create_glyphs_widget): normalize
+ 	buttons and allow :image.
+
+1998-12-27  Andy Piper  <andy@xemacs.org>
+
+	* frame-msw.c (mswindows_init_frame_1): warning elimination.
+
+	* glyphs-widget.c (check_valid_anything): no-op function.
+	(check_valid_callback): check callbacks in gui_items.
+	(check_valid_symbol): as it sounds.
+	(check_valid_string_or_vector): ditto.
+	(widget_validate): modified for descriptors that are vectors or
+ 	sequences of keyword/val pairs.
+	(widget_instantiate_1): ditto.
+	(image_instantiator_format_create_glyphs_widget): allow gui_item
+ 	keywords in the instantiator.
+
+	* gui.c (gui_parse_item_keywords_internal): renamed from
+ 	gui_parse_item_keywords but taking error behaviour.
+	(gui_parse_item_keywords): use it.
+	(gui_parse_item_keywords_no_errors): ditto.
+	(gui_item_add_keyval_pair): add Error_behavior flag and only
+ 	signal invalid keywords if required.
+
+	* gui.h: new gui signatures.
+
+	* menubar.c (menu_parse_submenu_keywords): use new
+ 	gui_item_add_keyval_pair signature.
+
+	* s/cygwin32.h: modify PTY_ITERATION to eliminate warnings.
+
+1998-12-28  Martin Buchholz <martin@xemacs.org>
+
+	* XEmacs 21.2.8 is released.
+
+1998-12-28  Martin Buchholz  <martin@xemacs.org>
+
+	* editfns.c (get_home_directory):
+	(user-home-directory): Simplify.
+
+
+	* callproc.c (child_setup):
+	- Environment variables were being passed to inferior processes
+	  using internal encoding.
+	- Convert to external encoding.
+	- Rename local var `tem' to better name `tail'.
+	- Use Flength instead of `manual' calculation.
+
+	* buffer.c (kill-buffer):
+	(record-buffer):
+	(set-buffer-major-mode):
+	(current-buffer):
+	- Fix up parameter names to correspond to docstrings.
+	- Don't use `bufname' when a buffer will do as well.
+	- Remove one unneeded GCPRO.
+
+	* buffer.h (initial_directory):
+	* buffer.c (init_initial_directory):
+	- use correct conversions between internal and external format.
+	(directory_is_current_directory): new function
+	(init_buffer): convert initial_directory to internal format.
+	- solve crashes when current working directory is non-ASCII.
+
+	* alloc.c (xmalloc):
+	(xcalloc):
+	(xrealloc):
+	- remove stupid casts, since XEmacs requires an ANSI C system.
+	(lrecord_type_index): replace abort() with more readable assert().
+
+	(reset_lcrecord_stats): remove.
+	(sweep_lcrecords_1):
+	- replace call to reset_lcrecord_stats() with call to xzero().
+
+1998-12-27  Martin Buchholz  <martin@xemacs.org>
+
+	* process-unix.c (unix_create_process):
+	- Fix crash invoking program with non-ASCII name.
+	  Try invoking xemacs with SHELL=/bin/sh, then M-x shell.
+	- Remove unused variable `env'.
+	- Rename `temp' to better name `save_errno'.
+	- Reorganize code for clarity.  But still too chicken to nuke the
+	  BSD 4.2 support.
+
+1998-12-24  Martin Buchholz <martin@xemacs.org>
+
+	* XEmacs 21.2.7 is released.
+
+1998-12-23  Martin Buchholz  <martin@xemacs.org>
+
+	* glyphs.c (decode_device_ii_format):
+	- Fix indentation.
+	- Use GET_C_STRING_FILENAME_DATA_ALLOCA with char *, not Extbyte *.
+
+	* glyphs-x.c (x_subwindow_instantiate):
+	- A image instance mask was being assigned to a image instance type!
+	- X_SUBWINDOW_INSTANCE_DATA (ii) is not an lvalue in C++.
+
+	* glyphs-msw.c (mswindows_initialize_dibitmap_image_instance):
+	Fix indentation.
+	* glyphs-x.h: Make indentation consistent.
+
+	* emacs.c (Fdump_emacs): Remove Steve Martin merge artifacts.
+
+	* glyphs-widget.c (check_valid_glyph): Warning suppression.
+	- Make it static
+	- #ifdef it out, since it's not actually used yet (FIX THIS!)
+
+	* glyphs-widget.c:
+	* glyphs.h:
+	Move declarations of decode_device_ii_format and
+	decode_image_instantiator_format into glyphs.h where they belong.
+
+1998-12-22  Martin Buchholz  <martin@xemacs.org>
+
+	* frame-x.c (x_delete_frame): Revert part of my changes at the
+	suggestion of Gunnar Evermann - unfortunately no one really
+	understands this code.
+
+	* callproc.c (init_callproc): code cleanup.
+
+	* free-hook.c (malloc):
+	(check_malloc):
+	(__free_hook):
+	(__malloc_hook):
+	(__realloc_hook):
+	(block_input_malloc):
+	(block_input_realloc):
+	* device-x.c (x_delete_device):
+	* emacs.c (voodoo_free_hook):
+	* events.c (print_event):
+	(CHECK_EVENT_TYPE):
+	(CHECK_EVENT_TYPE2):
+	(CHECK_EVENT_TYPE3):
+	Use proper prototypes.
+	Make C_E_T macros a little faster.
+	Pedantic fiddly little changes.  You really don't care.
+
+1998-12-22  Andy Piper  <andy@xemacs.org>
+
+	* redisplay-output.c (redisplay_clear_region): make sure that
+ 	fg/bg colors get set even when we are in the border area.
+
+1998-12-13  Martin Buchholz  <martin@xemacs.org>
+
+	* console-msw.c: Function definitions follow coding standards
+	- This prevents e.g. find-tag on Lisp_Event finding DEVENT
+
+1998-12-11  Martin Buchholz  <martin@xemacs.org>
+
+	* events.h (struct timeout_data):
+	* event-tty.c (tty_timeout_to_emacs_event):
+	* event-msw.c (mswindows_wm_timer_callback):
+	* event-Xt.c (Xt_timeout_to_emacs_event):
+	* event-msw.c (mswindows_cancel_dispatch_event):
+	Make sure Lisp_Objects inside events are initialized to Qnil, not
+	Qnull_pointer, which is now illegal.
+
+1998-12-10  Martin Buchholz  <martin@xemacs.org>
+
+	* lisp.h: Fix up prototypes to match alloc.c
+
+1998-12-08  Martin Buchholz  <martin@xemacs.org>
+
+	* windowsnt.h: Remove `support' for using index and rindex
+
+	* filelock.c (current_lock_owner):
+	- Change uses of index -> strchr, rindex -> strrchr
+
+1998-12-07  Martin Buchholz  <martin@xemacs.org>
+
+	* sysdep.c (set_descriptor_non_blocking):
+	Since O_NONBLOCK is now always #defined, make use of fcntl
+	conditional on F_SETFL being defined.
+
+	* console-msw.c (DHEADgER):
+	(DOPAQUE_DATA):
+	(DEVENT):
+	(DCONS):
+	(DCONSCDR):
+	(DSTRING):
+	(DVECTOR):
+	(DSYMBOL):
+	(DSYMNAME):
+	- max_align_t should not be visible to the user of the
+	  XOPAQUE_DATA macro.
+	- use Bufbyte instead of char
+	- parens around (FOOP (obj)) are always redundant.
+	  If they were necessary, we should fix the macro instead.
+	- Always use string_data(foo) instead of foo->data.
+
+
+1998-12-06  Martin Buchholz  <martin@xemacs.org>
+
+	* frame-msw.c (mswindows_init_frame_1):
+	- use make_lisp_hash_table, not Fmake_hash_table
+	- include elhash.h
+
+	* lisp.h:
+	* alloc.c (make_vector): remove travesty
+	(Fmake_vector):
+	(make_pure_vector):
+	(pure_cons):
+	(make_bit_vector_internal):
+	(make_bit_vector):
+	(make_bit_vector_from_byte_vector):
+	(Fmake_bit_vector):
+	- make vector_equal a little faster.
+	- Don't use variable name `new'.
+	- Use size_t instead of EMACS_INT.
+	- usual Martin-style pointless bit-twiddling.
+
+	* fns.c (mapcar1):
+	(Fmapconcat):
+	(Fmapcar):
+	(Fmapvector):
+	Make mapcar faster.  In particular, make
+	  (mapc #'identity long-string)
+	MUCH faster under Mule.
+	* tests/automated/lisp-tests.el: Test 'em!
+
+	* bytecode.c (Ffetch_bytecode): Fix crash when loading lazy-loaded
+	bytecode.
+
+1998-12-01  Martin Buchholz  <martin@xemacs.org>
+
+	* menubar-x.c (menu_item_descriptor_to_widget_value_1): Always use
+	Qnil, not NULL, to initialize `null' Lisp_Objects.
+
+1998-11-29  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* specifier.c (display_table_validate): Update.
+
+	* redisplay.c (create_text_block): Use them.
+
+	* glyphs.c (display_table_entry): New function.
+	(get_display_tables): Ditto.
+
+1998-12-15  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
+
+	* eldap.c (toplevel): Mention that eldap.c compiles with
+	OpenLDAP libs
+	(Fldap_open): Use `GET_C_STRING_OS_DATA_ALLOCA'
+	(Fldap_search_internal): Ditto
+
+1998-12-11  Martin Buchholz  <martin@xemacs.org>
+
+	* event-msw.c (mswindows_cancel_dispatch_event):
+	Gratuitous code prettification
+
+
+1998-12-07  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* fns.c (Fnconc): Fix use of wrong_type_argument().
+
+	* floatfns.c (Ffloat): Fix docstring.
+	(Ffloat): Fix use of wrong_type_argument().
+	(Fabs): Ditto.
+	(extract_float): Ditto.
+	(Fceiling): Ditto.
+	(Fround): Ditto.
+	(Ftruncate): Ditto.
+
+1998-12-06  Martin Buchholz  <martin@xemacs.org>
+
+	* frame-msw.c (mswindows_init_frame_1):
+	- use make_lisp_hash_table, not Fmake_hash_table
+	- include elhash.h
+
+	* lisp.h:
+	* alloc.c (make_vector): remove travesty
+	(Fmake_vector):
+	(make_pure_vector):
+	(pure_cons):
+	(make_bit_vector_internal):
+	(make_bit_vector):
+	(make_bit_vector_from_byte_vector):
+	(Fmake_bit_vector):
+	- make vector_equal a little faster.
+	- Don't use variable name `new'.
+	- Use size_t instead of EMACS_INT.
+	- usual Martin-style pointless bit-twiddling.
+
+	* fns.c (mapcar1):
+	(Fmapconcat):
+	(Fmapcar):
+	(Fmapvector):
+	Make mapcar faster.  In particular, make
+	  (mapc #'identity long-string)
+	MUCH faster under Mule.
+	* tests/automated/lisp-tests.el: Test 'em!
+
+	* bytecode.c (Ffetch_bytecode): Fix crash when loading lazy-loaded
+	bytecode.
+
+1998-12-02  Didier Verna  <verna@inf.enst.fr>
+
+	* menubar-x.c (menu_item_descriptor_to_widget_value_1): set the
+	accelerator field to nil for labels.
+
+1998-12-16  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+
+	* menubar-msw.c (displayable_menu_item):
+	  Escape occurrences of '&' and support occurrences of the
+	 '%_' accelerator indicator in menus.
+
+1998-11-26  Didier Verna  <verna@inf.enst.fr>
+
+	* dired.c (Fdirectory_files): use make_string instead of
+	make_ext_string on the filename. The conversion external->internal
+	format is already done in sys_readdir.
+
+1998-12-15  Gunnar Evermann  <ge204@eng.cam.ac.uk>
+
+	* glyphs.c (normalize_image_instantiator): GCPRO instantiator
+
+1998-12-16  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+
+	* event-msw.c
+	  (Belatedly) added Kirill to list of file's authors.
+	  emacs_mswindows_quit_p: Don't process WM_PAINT messages in
+	  quit checking. WM_PAINT messages cause redisplay, but
+	  windows' states are not necessarily stable when this function
+	  gets called.
+
+1998-12-17  Andy Piper  <andy@xemacs.org>
+
+	* strftime.c (zone_name): CONSTify.
+
+1998-12-15  Andy Piper  <andy@xemacs.org>
+
+	* glyphs-msw.c (mswindows_combo_instantiate): ditto.
+	(mswindows_widget_property): return Qunbound when no property available.
+	(mswindows_button_property): ditto.
+	(mswindows_combo_property): ditto.
+	(mswindows_widget_set_property): ditto.
+
+	* glyphs-widget.c (check_valid_item_list): use properties.
+
+	* glyphs.h (struct Lisp_Image_Instance): we have properties now.
+
+	* glyphs.c (Fset_image_instance_property): allow setting of arbitrary properties.
+	(Fimage_instance_property): ditto.
+	* glyphs-widget.c (widget_property): ditto.
+	(widget_set_property): ditto.
+
+	* frame-msw.c (mswindows_set_frame_pointer): SetCursor() as well
+ 	as setting the class cursor so that GC actually changes the
+ 	cursor.
+
+	* config.h: don't undef MAIL_USE_POP.
+
+1998-12-13  Andy Piper  <andy@xemacs.org>
+
+	* glyphs-msw.c
+ 	(image_instantiator_format_create_glyphs_mswindows): line ->
+ 	label.
+	(mswindows_label_instantiate): ditto. Play with window flags.
+	(image_instantiator_format_create_glyphs_mswindows): ditto.
+	(vars_of_glyphs_mswindows): provide Qlabel as we support it now.
+
+	* glyphs-widget.c (widget_instantiate_1): re-jig autosizing to
+ 	cope with lines and labels.
+	(static_instantiate): use widget_instantiate_1.
+	line -> label.
+	(image_instantiator_format_create_glyphs_widget): ditto.
+
+1998-12-10  Andy Piper  <andy@xemacs.org>
+
+	* Makefile.in.in (objs): add gui.o
+
+1998-12-10  Andy Piper  <andy@xemacs.org>
+
+	* gui.c: adjust defines of HAVE_POPUPS so that we can build with
+ 	no window system.
+
+1998-12-09  Andy Piper  <andy@xemacs.org>
+
+	* glyphs.c (finalize_image_instance): mark glyphs changed when an
+ 	image instance is removed so that the subwindow cache gets reset
+ 	and thus destroyed images get GC'd.
+
+1998-12-08  Andy Piper  <andy@xemacs.org>
+
+	* gui-msw.c (mswindows_handle_gui_wm_command): call
+ 	MARK_SUBWINDOWS_CHANGED.
+
+	* glyphs-msw.c (mswindows_finalize_image_instance): make sure
+ 	subwindows really get deleted.
+
+	* redisplay.c: new variable subwindows_changed[_set].
+	(redisplay_window): use it.
+	(redisplay_frame): ditto.
+	(redisplay_device): ditto.
+	(redisplay_without_hooks): ditto.
+
+	* device.h (MARK_DEVICE_SUBWINDOWS_CHANGED): new macro for
+ 	subwindows redisplay as per glyphs equivalent.
+	* redisplay.h: ditto.
+	(MARK_SUBWINDOWS_CHANGED): ditto.
+	(RESET_CHANGED_SET_FLAGS): ditto.
+	* frame.h (MARK_FRAME_SUBWINDOWS_CHANGED): ditto.
+
+1998-12-07  Andy Piper  <andy@xemacs.org>
+
+	* frame.c (Fmake_frame): reset subwindow cachels on non-stream
+ 	frames.
+
+	* redisplay.c (redisplay_frame): invalidate subwindow cachels.
+
+	* event-msw.c (mswindows_wnd_proc): catch the various WM_CTLCOLOR*
+ 	messages and paint widget glyphs as appropriate with their face fg
+ 	& bg.
+
+1998-12-06  Andy Piper  <andy@xemacs.org>
+
+	* glyphs-msw.c (vars_of_glyphs_mswindows): provide widget types
+ 	here rather than in glyphs-widget - do this because we only want
+ 	to provide what is really available.
+
+	* glyphs.c (Fimage_instance_property): new function to get the
+ 	properties of image instances. wires through to console specific
+ 	methods and then to widget specific methods.
+	(Fset_image_instance_property): ditto but for setting widget properties.
+	(check_valid_face): make extern so that it can be used elsewhere.
+
+	* glyphs-widget.c (widget_property): new function. gets the
+ 	properties of widgets in general and wires the function through to
+ 	widget specific ones.
+	(widget_set_property): ditto but for setting widget properties.
+
+	* glyphs-msw.c (mswindows_combo_instantiate): Add functionality to
+ 	add items to the list. Play with window styles a bit to get the
+ 	desired effect.
+	(mswindows_widget_property): break out specific widget properties.
+	(mswindows_button_property): new function. gets the checked state
+ 	of a button.
+	(mswindows_combo_property): new function. gets the current
+ 	selection in the combo box.
+	(mswindows_widget_set_property): new function. sets specific
+ 	properties of specific widgets.
+
+	* glyphs-widget.c (check_valid_item_list): new function. check
+ 	that items for a combo-box are just a list of strings.
+	(combo_validate): new function. check there is an item list.
+	(widget_instantiate_1): new function. renamed from
+ 	widget_instantiate so that we can do slightly different things for
+ 	other widgets.
+	(widget_instantiate): call widget_instantiate_1.
+	(combo_instantiate): new function to instantiate combo boxes,
+ 	defaults height to the pixel height of the number of items in the
+ 	box.
+	(syms_of_glyphs_widget): move widget keywords here.
+	(image_instantiator_format_create_glyphs_widget): use new combo
+ 	functions.
+
+1998-12-04  Andy Piper  <andy@xemacs.org>
+
+	* event-msw.c (mswindows_wnd_proc): mule-ize.
+
+	* glyphs.c (pixmap_to_lisp_data): mule-ize.
+
+	* glyphs-msw.c (extract_xpm_color_names): mule-ize.
+	(resource_name_to_resource): ditto.
+	(mswindows_resource_instantiate): ditto.
+	(mswindows_widget_instantiate): ditto.
+	(mswindows_widget_set_property): ditto.
+
+	* redisplay-output.c (redisplay_output_subwindow): don't show
+ 	subwindows if they are obscured at the edge of the frame, emacs
+ 	gets into some sort of redisplay loop otherwise.
+
+	* gui.h: prototype gui_item_selected_p.
+
+	* gui.c (gui_item_selected_p): new function to determine the
+ 	selected state of a gui_item.
+
+	* frame.h (struct frame): add subwindows_changed flag.
+
+	* redisplay.c (redisplay_frame): call update_frame_subwindows ().
+
+	* glyphs.c (update_subwindow): new function to update a
+ 	subwindow's state.
+	(update_frame_subwindows): new function to update all the
+ 	subwindows on a frame.
+
+	* console.h (struct console_methods): add update_subwindow.
+
+	* glyphs-msw.c (mswindows_widget_property): return selected state
+ 	for selected property.
+	(mswindows_update_subwindow): new function. updates widget glyphs
+ 	in redisplay as per menubars or toolbars e.g. selected state.
+	(console_type_create_glyphs_mswindows): add update_subwindow.
+
+1998-12-03  Andy Piper  <andy@xemacs.org>
+
+	* console-tty.c (syms_of_console_tty): MULE -> FILE_CODING since
+ 	tty coding system things are such.
+
+	* glyphs-widget.c (widget_face_font_info): new function for
+ 	pulling out height and width metrics for a widget's face.
+	(widget_text_to_pixel_conversion): calculate pixel sizes of text
+ 	for widgets.
+
+	* event-msw.c (mswindows_drain_windows_queue): translate messages
+ 	that are destined for subwindows. This makes edit fields interact
+ 	with the keyboard correctly.
+	nuke warnings by #ifndef'ing out stuff not required by msg select().
+
+	* glyphs.h (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT_NO_SYM): new
+ 	macro defining the iiforma without the symbol required by widget.
+	(INITIALIZE_IMAGE_INSTANTIATOR_FORMAT): use it.
+
+	* general.c (syms_of_general): add Qwidget, Qselected.
+
+	* faces.c (complex_vars_of_faces): add widget face inheriting from
+ 	gui-element face.
+
+1998-11-09  Andy Piper  <andy@xemacs.org>
+
+	* window.h (struct window): add a cache of subwindows on a
+ 	per-window basis.
+
+	* window.c (mark_window): mark the subwindow_instance_cache.
+	(allocate_window): initialise the subwindow instance_cache.
+
+	* toolbar-x.c (x_output_toolbar): call redisplay_clear_region
+ 	instead of the devmeth.
+	(x_clear_toolbar): ditto.
+
+	* redisplay-x.c (x_output_display_block): call
+ 	redisplay_output_subwindow for subwindows and widgets.
+
+	* redisplay-tty.c (tty_output_display_block): add IMAGE_WIDGET to
+ 	types to do nothing for.
+
+	* lisp.h: declare new widget/subwindow symbols.
+
+	* glyphs.c (image_instantiate): cache subwindows on a per-window
+ 	basis.
+	(subwindow_possible_dest_types): new function for subwindow dest
+ 	types.
+	(subwindow_instantiate): generic instantiation of a
+ 	subwindow. specialised by device multi-methods.
+	(Fsubwindowp): moved from glyphs-x.c. adapted for glyph-based
+ 	subwindows.
+	(Fimage_instance_subwindow_id): ditto.
+	(Fresize_subwindow): ditto.
+	(Fforce_subwindow_map): ditto.
+
+	* glyphs-x.c (x_print_image_instance): remove subwindow
+ 	stuff. Handled genrically in glyphs.c.
+	(x_image_instance_equal): ditto.
+	(x_image_instance_hash): ditto.
+	(x_finalize_image_instance): delete subwindows when required.
+	(mark_subwindow) (print_subwindow) (finalize_subwindow)
+ 	(subwindow_hash) (Fmake_subwindow): deleted because of new,
+ 	glyph-based, subwindow implementation.
+	(Fsubwindow_height) (Fsubwindow_width) (Fsubwindow_xid): aliased
+ 	in glyphs.el
+	(Fsubwindowp) (Fresize_subwindow) (Fforce_subwindow_map): moved to
+ 	glyphs.c.
+	(x_unmap_subwindow): new function to unmap X subwindows.
+	(x_map_subwindow): new function to map X subwindows.
+	(x_subwindow_instantiate): new function to instantiate X
+ 	subwindows.
+	(x_resize_subwindow): new function to resize X subwindows.
+	(console_type_create_glyphs_x): add subwindow functions.
+	(image_instantiator_format_create_glyphs_x): add device
+ 	multi-methods for xpm, xbm and subwindow.
+
+	* glyphs.el (subwindow-xid): old alias for new subwindow functions.
+	(subwindow-width): ditto.
+	(subwindow-height): ditto.
+
+	* glyphs-msw.c (mswindows_widget_instantiate): new function for
+ 	generally instantiating ms subwindows. Used by
+ 	mswindows_*_instantiate.
+	(mswindows_edit_instantiate): instantiate an edit field on a
+ 	mswindows frame.
+
+1998-11-04  Andy Piper  <andy@xemacs.org>
+
+	* symsinit.h: declare new functions.
+
+	* redisplay.h: declare new functions.
+
+	* redisplay-x.c (x_output_display_block): call
+ 	redisplay_clear_region rather than x_clear_region.
+	(x_output_string): ditto.
+	(x_output_pixmap): ditto.
+	(x_clear_to_window_end): ditto.
+	(x_output_eol_cursor): ditto.
+	(x_clear_region): only do X specific things. other duties handled
+ 	in redisplay_clear_region.
+
+	* redisplay-tty.c (tty_clear_region): do tty specific things - some
+ 	duties moved to redisplay_clear_region.
+
+	* redisplay-output.c (clear_left_border): use
+ 	redisplay_clear_region instead of device method.
+	(clear_right_border): ditto.
+	(output_display_line): ditto.
+	(redisplay_output_subwindow): ditto.
+	(redisplay_clear_top_of_window): ditto.
+	(redisplay_clear_region): perform duties previously handled by
+ 	device methods. call the appropriate device method at the
+ 	end. unmap subwindows if necessary.
+
+	* redisplay-msw.c (mswindows_output_string): use
+ 	redisplay_clear_region instead of mswindows_clear_region.
+	(mswindows_clear_to_window_end): ditto.
+	(mswindows_output_display_block): output subwindows when required.
+	(mswindows_clear_region): only do mswindows specific things,
+ 	everything else is now handled in redisplay_clear_region.
+
+	* gui.h: add item id hash defines and declare function prototypes.
+
+	* gui.c (mark_gui_item): new function for marking gui_items.
+	(gui_item_hash): generic hash function for generating command ids
+ 	for gui_items.
+
+	* gui-msw.c: new file.
+	(mswindows_handle_gui_wm_command): new function to handle widget
+ 	callbacks.
+
+	* glyphs.h (MAYBE_IIFORMAT_DEVMETH): new function for device
+ 	multi-methods.
+	(IIFORMAT_HAS_SHARED_METHOD): ditto.
+	(DEFINE_DEVICE_IIFORMAT): ditto.
+	(INITIALIZE_DEVICE_IIFORMAT): ditto.
+	(struct Lisp_Image_Instance): add widget and subwindow data plus
+ 	appropriate access functions.
+
+	* glyphs.c (decode_device_ii_format): new function for decoding
+ 	image instantiator functions based on a device type as well as an
+ 	image format.
+	(decode_image_instantiator_format): just call
+ 	decode_device_ii_format with nil device.
+	(add_entry_to_device_ii_format_list): new function for per device
+ 	method instances.
+	(add_entry_to_image_instantiator_format_list): just call
+ 	add_entry_to_device_ii_format_list with nil device.
+	(check_valid_vector): new function.
+	(instantiate_image_instantiator): instantiate using per-format
+ 	method and then per-format-per-device method (device
+ 	multi-methods). signal an error if neither is possible.
+	(mark_image_instance): cope with subwindows and widgets.
+	(print_image_instance): ditto.
+	(image_instance_equal): ditto.
+	(image_instance_hash): ditto.
+	(allocate_glyph): ditto.
+	(glyph_width): ditto.
+	(glyph_height_internal): ditto.
+	(xpm_instantiate): removed because of device multi-methods.
+	(mark_subwindow_cachels): new cachel functions for caching
+ 	instantiated subwindows on a per-frame basis. mostly copied from
+ 	glyph cachel functions.
+	(update_subwindow_cachel_data): ditto.
+	(add_subwindow_cachel): ditto.
+	(get_subwindow_cachel_index): ditto.
+	(reset_subwindow_cachels): ditto.
+	(mark_subwindow_cachels_as_not_updated): ditto.
+	(unmap_subwindow): generic unmapping of subwindows based on cachel
+ 	data.
+	(map_subwindow): ditto.
+	(initialize_subwindow_image_instance): generic initialisation of
+ 	subwindow data.
+	(syms_of_glyphs): add widget keywords.
+
+	* glyphs-x.h (struct x_subwindow_data): convert Lisp_Subwindow to
+ 	x_subwindow_data.
+
+1998-11-04  Andy Piper  <andy@xemacs.org>
+
+	* glyphs-widget.c: new file for instantiating widget type glyphs.
+	(widget_possible_dest_types): new general dest type function for
+ 	widgets.
+	(widget_validate): ditto.
+	(initialize_widget_image_instance): ditto
+	(widget_instantiate): ditto. Sets up fg/bg, gui_item parsing
+ 	before handing on control to device multi-methods.
+	(syms_of_glyphs_widget): new function.
+	(image_instantiator_format_create_glyphs_widget): new function,
+ 	added placeholders for button, edit, combo, scrollbar
+	(vars_of_glyphs_widget): new function.
+
+	* glyphs-msw.h (WIDGET_INSTANCE_MSWINDOWS_HANDLE): new define for
+ 	storing window ids of widgets.
+
+	* glyphs-msw.c (mswindows_finalize_image_instance): cope with
+ 	deletion of widget and subwindow glyphs.
+	(mswindows_unmap_subwindow): new device function for unmapping
+ 	subwindows on a msw frame.
+	(mswindows_map_subwindow): ditto.
+	(mswindows_register_image_instance): register instantiated widgets
+ 	with the widget hastable.
+	(mswindows_button_instantiate): instantiate a button type widget
+ 	on an msw frame.
+	(mswindows_subwindow_instantiate): instanttiate a subwindow on a
+ 	mswindows frame.
+	(image_instantiator_format_create_glyphs_mswindows): add device
+ 	multi-methods for xbm, xpm, subwindow, edit and button.
+
+	* frame.h (struct frame): add subwindow_cachels dynarr for caching
+ 	information about subwindows visible on the current frame. used by
+ 	redisplay_clear_region to unmap subwindows as required.
+
+	* frame.c (mark_frame): mark subwindow_cachels.
+	(allocate_frame_core): instantiate subwindow_cachels.
+
+	* frame-msw.c (mswindows_init_frame_1): instntiate and mark the
+ 	widget hashtable.
+
+	* event-msw.c (mswindows_wnd_proc): add call to
+ 	mswindows_handle_gui_wm_command to handle widget callbacks.
+
+	* emacs.c (main_1): add calls to glyphs-widget initialisation
+ 	routines.
+
+	* console.h (struct console_methods): add
+ 	unmap/map_subwindow_method for use be redisplay_clear_region to
+ 	map and unmap subwindows. Remove xpm and xbm stuff - now dealt
+ 	with by image instantiator multi-methods. Add
+ 	resize_subwindow_method.
+
+	* console-stream.c (stream_clear_region): change signature to
+ 	match new generic clear region function.
+
+	* Makefile.in.in: add glyphs-widget.o to list of objects.
+
+	* console-msw.h (struct mswindows_frame): add widget hashtable for
+ 	wiring command ids to callbacks.
+
+1998-12-16  Andy Piper  <andy@xemacs.org>
+
+	* XEmacs 21.2.6 is released
+
+1998-12-08  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* md5.c (Fmd5): Correctly initiate string input stream.
+
+	* Makefile.in.in (tests): Add md5-tests.el.
+
+1998-12-06  Martin Buchholz  <martin@xemacs.org>
+
+	* lisp.h:
+	* alloc.c (make_vector): remove travesty
+	(Fmake_vector):
+	(make_pure_vector):
+	(pure_cons):
+	(make_bit_vector_internal):
+	(make_bit_vector):
+	(make_bit_vector_from_byte_vector):
+	(Fmake_bit_vector):
+	- make vector_equal a little faster.
+	- Don't use variable name `new'.
+	- Use size_t instead of EMACS_INT.
+	- usual Martin-style pointless bit-twiddling.
+
+	* fns.c (mapcar1):
+	(Fmapconcat):
+	(Fmapcar):
+	(Fmapvector):
+	Make mapcar faster.  In particular, make
+	  (mapc #'identity long-string)
+	MUCH faster under Mule.
+	* tests/automated/lisp-tests.el: Test 'em!
+
+1998-12-06  Martin Buchholz  <martin@xemacs.org>
+
+	* bytecode.c (Ffetch_bytecode): Fix crash when loading lazy-loaded
+	bytecode.
+
+1998-12-13  Martin Buchholz  <martin@xemacs.org>
+
+	* console-msw.c: Function definitions follow coding standards
+	- This prevents e.g. find-tag on Lisp_Event finding DEVENT
+
+1998-12-11  Martin Buchholz  <martin@xemacs.org>
+
+	* events.h (struct timeout_data):
+	* event-tty.c (tty_timeout_to_emacs_event):
+	* event-msw.c (mswindows_wm_timer_callback):
+	* event-Xt.c (Xt_timeout_to_emacs_event):
+	* event-msw.c (mswindows_cancel_dispatch_event):
+	Make sure Lisp_Objects inside events are initialized to Qnil, not
+	Qnull_pointer, which is now illegal.
+
+1998-12-10  Martin Buchholz  <martin@xemacs.org>
+
+	* lisp.h: Fix up prototypes to match alloc.c
+
+1998-12-09  Andy Piper  <andy@xemacs.org>
+
+	* glyphs-msw.c (init_image_instance_from_xbm_inline): don't use
+ 	XSETINT for assigning lisp objects.
+
+1998-12-07  Martin Buchholz  <martin@xemacs.org>
+
+	* opaque.h:
+	* console-msw.c (DHEADER):
+	(DOPAQUE_DATA):
+	(DEVENT):
+	(DCONS):
+	(DCONSCDR):
+	(DSTRING):
+	(DVECTOR):
+	(DSYMBOL):
+	(DSYMNAME):
+	- max_align_t should not be visible to the user of the
+	  XOPAQUE_DATA macro.
+	- use Bufbyte instead of char
+	- parens around (FOOP (obj)) are always redundant.
+	  If they were necessary, we should fix the macro instead.
+	- Always use string_data(foo) instead of foo->data.
+
+1998-12-07  Martin Buchholz  <martin@xemacs.org>
+
+	* sysdep.c (set_descriptor_non_blocking):
+	Since O_NONBLOCK is now always #defined, make use of fcntl
+	conditional on F_SETFL being defined.
+
+1998-12-09  Andy Piper  <andy@xemacs.org>
+
+	* menubar-msw.c (mswindows_handle_wm_command): add back in checks
+ 	that got removed in the merge
+
+1998-11-30  Greg Klanderman  <greg@alphatech.com>
+
+	* dired.c (vars_of_dired): bugfix for previous conditionalization
+	of user-name-completion on non- Windows NT.
+
+1998-12-08  Martin Buchholz  <martin@xemacs.org>
+
+	* windowsnt.h: Remove `support' for using index and rindex
+
+	* filelock.c (current_lock_owner):
+	- Change uses of index -> strchr, rindex -> strrchr
+
+1998-12-06  Martin Buchholz  <martin@xemacs.org>
+
+	* frame-msw.c (mswindows_init_frame_1):
+	- use make_lisp_hash_table, not Fmake_hash_table
+	- include elhash.h
+
+1998-12-05  XEmacs Build Bot <builds@cvs.xemacs.org>
+
+	* XEmacs 21.2.5 is released
+
+1998-11-30  Martin Buchholz  <martin@xemacs.org>
+
+	* xselect.c (receive_incremental_selection):
+	* xselect.c (x_get_window_property):
+	* xmu.c (XmuReadBitmapDataFromFile):
+	* xmu.c (XmuCursorNameToIndex):
+	* xgccache.c (describe_gc_cache):
+	* xgccache.c (gc_cache_lookup):
+	* xgccache.c (free_gc_cache):
+	* xgccache.c (make_gc_cache):
+	* window.h:
+	* window.c (map_windows_1):
+	* window.c (Fother_window_for_scrolling):
+	* window.c (window_scroll):
+	* window.c (change_window_height):
+	* window.c (Fsplit_window):
+	* window.c (window_left_gutter_width):
+	* window.c (window_modeline_height):
+	* window.c (invalidate_vertical_divider_cache_in_window):
+	* window.c (window_needs_vertical_divider_1):
+	* window.c (update_mirror_internal):
+	* window.c (SET_LAST_FACECHANGE):
+	* widget.c (Fwidget_plist_member):
+	* unexec.c (copy_text_and_data):
+	* unexcw.c (copy_executable_and_dump_data_section):
+	* tooltalk.doc:
+	* tooltalk.c (struct Lisp_Tooltalk_Pattern):
+	* tooltalk.c (struct Lisp_Tooltalk_Message):
+	* toolbar.h (struct toolbar_button):
+	* toolbar.c (default_toolbar_visible_p_changed_in_window):
+	* toolbar.c (recompute_overlaying_specifier):
+	* toolbar.c (toolbar_validate):
+	* toolbar.c (toolbar_button_at_pixpos):
+	* toolbar.c (get_toolbar_coords):
+	* toolbar.c (update_frame_toolbars):
+	* toolbar-x.c:
+	* toolbar-msw.c (mswindows_handle_toolbar_wm_command):
+	* toolbar-msw.c (mswindows_find_toolbar_pos):
+	* toolbar-msw.c (mswindows_output_toolbar):
+	* toolbar-msw.c (mswindows_clear_toolbar):
+	* toolbar-msw.c:
+	* systty.h:
+	* syssignal.h:
+	* sysproc.h:
+	* sysfile.h:
+	* sysdll.c:
+	* sysdep.h:
+	* sysdep.c (rmdir):
+	* sysdep.c (sys_fopen):
+	* sysdep.c (sys_open):
+	* sysdep.c (tty_init_sys_modes_on_device):
+	* sysdep.c (get_eof_char):
+	* sysdep.c (child_setup_tty):
+	* sysdep.c (set_descriptor_non_blocking):
+	* syntax.h:
+	* syntax.c (scan_words):
+	* syntax.c:
+	* symsinit.h:
+	* symeval.h (struct symbol_value_varalias):
+	* symeval.h (struct symbol_value_forward):
+	* symbols.c (syms_of_symbols):
+	* symbols.c (init_symbols_once_early):
+	* symbols.c (Fbuilt_in_variable_type):
+	* symbols.c (Fsymbol_value_in_buffer):
+	* symbols.c (default_value):
+	* symbols.c (Fset):
+	* symbols.c (find_symbol_value_quickly):
+	* symbols.c (store_symval_forwarding):
+	* symbols.c (set_default_console_slot_variable):
+	* symbols.c (set_default_buffer_slot_variable):
+	* symbols.c (verify_ok_for_buffer_local):
+	* symbols.c (symbol_is_constant):
+	* symbols.c (oblookup):
+	* symbols.c (Funintern):
+	* symbols.c (Fintern):
+	* symbols.c (check_obarray):
+	* sunplay.c:
+	* specifier.h (struct specifier_methods):
+	* specifier.h:
+	* specifier.c (specifier_instance):
+	* specifier.c (specifier_instance_from_inst_list):
+	* specifier.c (decode_locale_type):
+	* specifier.c (specifier_equal):
+	* specifier.c (finalize_specifier):
+	* specifier.c (prune_specifiers):
+	* specifier.c (kill_specifier_buffer_locals):
+	* sound.c (init_native_sound):
+	* sound.c:
+	* signal.c (alarm):
+	* search.c (Fmatch_data):
+	* search.c (match_limit):
+	* search.c (Freplace_match):
+	* search.c (skip_chars):
+	* search.c (scan_buffer):
+	* search.c:
+	* scrollbar.c (specifier_vars_of_scrollbar):
+	* scrollbar.c (Fscrollbar_set_hscroll):
+	* scrollbar.c (vertical_scrollbar_changed_in_window):
+	* scrollbar.c (release_window_mirror_scrollbars):
+	* scrollbar.c (free_scrollbar_instance):
+	* scrollbar-x.c:
+	* scrollbar-msw.c:
+	* s/msdos.h (O_BINARY):
+	* s/linux.h:
+	* s/freebsd.h (LIBS_TERMCAP):
+	* regex.c (re_match_2_internal):
+	* regex.c (compile_extended_range):
+	* regex.c (POP_FAILURE_POINT):
+	* regex.c (PUSH_FAILURE_POINT):
+	* redisplay.h (RESET_CHANGED_SET_FLAGS):
+	* redisplay.h:
+	* redisplay.h (struct display_line):
+	* redisplay.h (struct rune):
+	* redisplay.c (vars_of_redisplay):
+	* redisplay.c (redisplay_variable_changed):
+	* redisplay.c (UPDATE_CACHE_RETURN):
+	* redisplay.c (validate_line_start_cache):
+	* redisplay.c (mark_redisplay_structs):
+	* redisplay.c (mark_glyph_block_dynarr):
+	* redisplay.c (window_line_number):
+	* redisplay.c (redisplay_frame):
+	* redisplay.c (redisplay_window):
+	* redisplay.c (generate_modeline):
+	* redisplay.c (create_right_glyph_block):
+	* redisplay.c (create_left_glyph_block):
+	* redisplay.c (create_text_block):
+	* redisplay.c:
+	* redisplay-x.c (x_output_hline):
+	* redisplay-x.c (x_output_vertical_divider):
+	* redisplay-tty.c (tty_output_display_block):
+	* redisplay-output.c (output_display_line):
+	* redisplay-output.c:
+	* redisplay-msw.c (mswindows_output_vertical_divider):
+	* redisplay-msw.c (mswindows_ring_bell):
+	* redisplay-msw.c (mswindows_output_cursor):
+	* redisplay-msw.c:
+	* rangetab.c:
+	* ralloc.c:
+	* puresize.h (RAW_PURESIZE):
+	* profile.c (syms_of_profile):
+	* profile.c (Fstart_profiling):
+	* profile.c (sigprof_handler):
+	* profile.c:
+	* procimpl.h:
+	* process.c (vars_of_process):
+	* process.c (read_process_output):
+	* process.c (get_process):
+	* process.c:
+	* process-unix.c (unix_open_multicast_group):
+	* process-unix.c (unix_get_tty_name):
+	* process-unix.c (unix_send_process):
+	* process-unix.c (unix_reap_exited_processes):
+	* process-unix.c (unix_create_process):
+	* process-unix.c (unix_init_process_io_handles):
+	* process-unix.c (allocate_pty):
+	* process-unix.c:
+	* process-nt.c (nt_open_network_stream):
+	* process-nt.c (nt_update_status_if_terminated):
+	* process-nt.c (nt_finalize_process_data):
+	* process-nt.c:
+	* print.c (debug_short_backtrace):
+	* print.c (debug_backtrace):
+	* print.c (print_symbol):
+	* print.c (print_internal):
+	* print.c (print_cons):
+	* print.c (Fwrite_char):
+	* print.c (print_prepare):
+	* print.c (canonicalize_printcharfun):
+	* print.c (output_string):
+	* print.c:
+	* opaque.h:
+	* opaque.c (allocate_managed_opaque):
+	* opaque.c:
+	* offix.c (DndSetData):
+	* objects.c (face_boolean_create):
+	* objects.c (font_instantiate):
+	* objects.c (font_create):
+	* objects.c (color_create):
+	* objects.c (finalize_font_instance):
+	* objects.c (finalize_color_instance):
+	* objects.c:
+	* objects-x.c (x_font_instance_truename):
+	* objects-x.c:
+	* objects-x.c (x_initialize_font_instance):
+	* objects-x.c (allocate_nearest_color):
+	* objects-tty.c (tty_initialize_font_instance):
+	* objects-tty.c (tty_initialize_color_instance):
+	* objects-msw.c (mswindows_initialize_color_instance):
+	* ntproc.c (syms_of_ntproc):
+	* ntproc.c (Fwin32_set_process_priority):
+	* ntproc.c (sys_spawnve):
+	* ntproc.c:
+	* ntheap.c (get_data_end):
+	* nt.c (period):
+	* nt.c:
+	* nt.c (stat):
+	* nt.c (generate_inode_val):
+	* nt.c (sys_rename):
+	* nas.c:
+	* mule-wnnfns.c (Fwnn_hinsi_number):
+	* mule-wnnfns.c (Fwnn_yuragi):
+	* mule-wnnfns.c (Fwnn_common_learn):
+	* mule-wnnfns.c (Fwnn_suffix_learn):
+	* mule-wnnfns.c (Fwnn_prefix_learn):
+	* mule-wnnfns.c (Fwnn_okuri_learn):
+	* mule-wnnfns.c (Fwnn_complex_conv):
+	* mule-wnnfns.c (Fwnn_last_is_first):
+	* mule-wnnfns.c (Fwnn_bmodify_dict_add):
+	* mule-wnnfns.c (Fwnn_notrans_dict_add):
+	* mule-wnnfns.c (Fwnn_fiusr_dict_add):
+	* mule-wnnfns.c (Fwnn_fisys_dict_add):
+	* mule-wnnfns.c (Fwnn_hinsi_list):
+	* mule-wnnfns.c (Fwnn_fuzokugo_set):
+	* mule-wnnfns.c (Fwnn_dict_search):
+	* mule-wnnfns.c (Fwnn_word_toroku):
+	* mule-wnnfns.c (Fwnn_hindo_update):
+	* mule-wnnfns.c (Fwnn_bunsetu_henkou):
+	* mule-wnnfns.c (Fwnn_kakutei):
+	* mule-wnnfns.c (Fwnn_begin_henkan):
+	* mule-wnnfns.c (Fwnn_dict_comment):
+	* mule-wnnfns.c (Fwnn_dict_add):
+	* mule-wnnfns.c (Fwnn_open):
+	* mule-mcpath.c (mc_getcwd):
+	* mule-coding.c (vars_of_mule_coding):
+	* mule-coding.c (convert_to_external_format):
+	* mule-coding.c (encoding_marker):
+	* mule-coding.c (decoding_marker):
+	* mule-coding.c (Fcopy_coding_system):
+	* mule-coding.c (Fmake_coding_system):
+	* mule-coding.c (Fcoding_system_list):
+	* mule-coding.c (Ffind_coding_system):
+	* mule-coding.c (symbol_to_eol_type):
+	* mule-coding.c:
+	* mule-charset.c (complex_vars_of_mule_charset):
+	* mule-charset.c (vars_of_mule_charset):
+	* mule-charset.c (Fset_charset_ccl_program):
+	* mule-charset.c (struct charset_list_closure):
+	* mule-charset.c (Ffind_charset):
+	* mule-charset.c (make_charset):
+	* mule-charset.c (non_ascii_valid_char_p):
+	* mule-charset.c:
+	* mule-ccl.c (ccl_driver):
+	* mule-canna.c (c2mu):
+	* mule-canna.c (Fcanna_henkan_begin):
+	* mule-canna.c (Fcanna_parse):
+	* mule-canna.c (Fcanna_store_yomi):
+	* mule-canna.c (Fcanna_touroku_string):
+	* mule-canna.c (Fcanna_initialize):
+	* minibuf.c:
+	* menubar.c (menu_parse_submenu_keywords):
+	* menubar-x.c (make_dummy_xbutton_event):
+	* menubar-x.c (set_frame_menubar):
+	* menubar-x.c (menu_item_descriptor_to_widget_value_1):
+	* menubar-x.c:
+	* menubar-msw.h:
+	* menubar-msw.c (mswindows_popup_menu):
+	* menubar-msw.c (mswindows_update_frame_menubars):
+	* menubar-msw.c (mswindows_handle_wm_command):
+	* menubar-msw.c (unsafe_handle_wm_initmenu_1):
+	* menubar-msw.c (unsafe_handle_wm_initmenupopup_1):
+	* menubar-msw.c (update_frame_menubar_maybe):
+	* menubar-msw.c (populate_or_checksum_helper):
+	* menubar-msw.c (empty_menu):
+	* menubar-msw.c:
+	* md5.c:
+	* marker.c (set_marker_internal):
+	* marker.c (print_marker):
+	* malloc.c:
+	* make-src-depend:
+	* lstream.c (lisp_buffer_rewinder):
+	* lstream.c (mark_lstream):
+	* lrecord.h:
+	* lrecord.h (struct lrecord_header):
+	* lread.c (readevalloop):
+	* lread.c (locate_file):
+	* lread.c (locate_file_in_directory):
+	* lread.c (Flocate_file):
+	* lread.c (load_force_doc_string_unwind):
+	* lread.c (ebolify_bytecode_constants):
+	* lread.c:
+	* lisp.h:
+	* lisp-union.h:
+	* lisp-disunion.h:
+	* linuxplay.c (linux_play_data_or_file):
+	* linuxplay.c (audio_init):
+	* line-number.c:
+	* keymap.h:
+	* keymap.c (describe_map):
+	* keymap.c (describe_map_mapper):
+	* keymap.c (Fdescribe_bindings_internal):
+	* keymap.c (Fsingle_key_description):
+	* keymap.c (map_keymap_sorted):
+	* keymap.c (get_relevant_keymaps):
+	* keymap.c (Flookup_key):
+	* keymap.c (raw_lookup_key_mapper):
+	* keymap.c (Fdefine_key):
+	* keymap.c (Fevent_matches_key_specifier_p):
+	* keymap.c (key_desc_list_to_event):
+	* keymap.c (define_key_parser):
+	* keymap.c (define_key_check_and_coerce_keysym):
+	* keymap.c (keymap_submaps):
+	* keymap.c (keymap_store_internal):
+	* keymap.c (keymap_delete_inverse_internal):
+	* keymap.c (keymap_store_inverse_internal):
+	* keymap.c (print_keymap):
+	* keymap.c (Lisp_Keymap):
+	* keymap.c:
+	* intl.c:
+	* insdel.c (convert_bufbyte_string_into_emchar_dynarr):
+	* insdel.c (make_gap):
+	* input-method-xlib.c (get_XIM_input):
+	* input-method-xlib.c (XIM_init_frame):
+	* imgproc.c:
+	* hash.h:
+	* hash.c:
+	* gui.c:
+	* gui-x.c (button_item_to_widget_value):
+	* gui-x.c (popup_selection_callback):
+	* glyphs.h (struct image_instantiator_methods):
+	* glyphs.c (mark_glyph_cachels):
+	* glyphs.c (Fglyph_type):
+	* glyphs.c (image_instantiate):
+	* glyphs.c (image_create):
+	* glyphs.c (make_image_instance_1):
+	* glyphs.c (finalize_image_instance):
+	* glyphs.c:
+	* glyphs-x.c (finalize_subwindow):
+	* glyphs-x.c (xface_validate):
+	* glyphs-x.c (x_locate_pixmap_file):
+	* glyphs-x.c (convert_EImage_to_XImage):
+	* glyphs-msw.c:
+	* glyphs-msw.c (mswindows_resource_instantiate):
+	* glyphs-msw.c (xpm_to_eimage):
+	* glyphs-msw.c (convert_EImage_to_DIBitmap):
+	* glyphs-eimage.c (tiff_instantiate):
+	* glyphs-eimage.c (png_instantiate):
+	* glyphs-eimage.c (struct png_error_struct):
+	* glyphs-eimage.c (gif_memory_storage):
+	* glyphs-eimage.c:
+	* gifrlib.h:
+	* getloadavg.c (getloadavg):
+	* getloadavg.c:
+	* gdbinit:
+	* free-hook.c (log_gcpro):
+	* free-hook.c (check_malloc):
+	* free-hook.c (check_free):
+	* free-hook.c (ROUND_UP_TO_PAGE):
+	* free-hook.c:
+	* frame.h (struct frame):
+	* frame.h:
+	* frame.c (change_frame_size_1):
+	* frame.c (allocate_frame_core):
+	* frame.c:
+	* frame-x.c (x_focus_on_frame):
+	* frame-x.c (x_init_frame_2):
+	* frame-x.c (x_popup_frame):
+	* frame-x.c (xemacs_XtPopup):
+	* frame-x.c:
+	* frame-x.c (Foffix_start_drag_internal):
+	* frame-x.c (x_cde_destroy_callback):
+	* frame-x.c (x_wm_hack_wm_protocols):
+	* frame-tty.c (tty_frame_visible_p):
+	* frame-msw.c (mswindows_make_frame_invisible):
+	* frame-msw.c (mswindows_after_init_frame):
+	* frame-msw.c (mswindows_init_frame_1):
+	* fns.c (syms_of_fns):
+	* fns.c (Fbase64_decode_string):
+	* fns.c (Fnconc):
+	* fns.c (Ffillarray):
+	* fns.c (Fobject_plist):
+	* fns.c (Fget):
+	* fns.c (Fcanonicalize_lax_plist):
+	* fns.c (Fcanonicalize_plist):
+	* fns.c (Fplist_remprop):
+	* fns.c (Fplist_get):
+	* fns.c (advance_plist_pointers):
+	* fns.c (internal_plist_put):
+	* fns.c (Fnreverse):
+	* fns.c (Fremassq):
+	* fns.c (Felt):
+	* fns.c (Fsubstring):
+	* fns.c (Fbvconcat):
+	* fns.c (Flength):
+	* fns.c (length_with_bytecode_hack):
+	* fns.c (print_bit_vector):
+	* fns.c:
+	* floatfns.c (Ffloor):
+	* floatfns.c:
+	* floatfns.c (in_float_error):
+	* fileio.c (Ffile_modes):
+	* fileio.c (Fexpand_file_name):
+	* fileio.c (Fmake_temp_name):
+	* fileio.c (Ffile_name_nondirectory):
+	* fileio.c (Ffile_name_directory):
+	* file-coding.h:
+	* file-coding.c (vars_of_mule_coding):
+	* file-coding.c (convert_to_external_format):
+	* file-coding.c (encoding_marker):
+	* file-coding.c (decoding_marker):
+	* file-coding.c (Fcopy_coding_system):
+	* file-coding.c (Fmake_coding_system):
+	* file-coding.c (struct coding_system_list_closure):
+	* file-coding.c (Ffind_coding_system):
+	* file-coding.c (symbol_to_eol_type):
+	* file-coding.c:
+	* faces.h (struct face_cachel):
+	* faces.c (vars_of_faces):
+	* faces.c (face_property_was_changed):
+	* faces.c (mark_face_cachels):
+	* faces.c (temporary_faces_list):
+	* faces.c (struct face_list_closure):
+	* faces.c:
+	* extents.h (struct extent):
+	* extents.c (vars_of_extents):
+	* extents.c (struct copy_string_extents_1_arg):
+	* extents.c (add_string_extents_mapper):
+	* extents.c (Fextent_property):
+	* extents.c (Fset_extent_property):
+	* extents.c (symbol_to_glyph_layout):
+	* extents.c (properties_equal):
+	* extents.c (print_extent):
+	* extents.c (print_extent_1):
+	* extents.c (extent_in_region_p):
+	* extents.c (gap_array_make_gap):
+	* extents.c:
+	* events.h (struct Lisp_Event):
+	* events.h:
+	* events.c (Fevent_properties):
+	* events.c (format_event_object):
+	* events.c (Fmake_event):
+	* events.c (event_equal):
+	* events.c (print_event):
+	* events.c (mark_event):
+	* event-stream.c ((read-char)
+	* event-stream.c (vars_of_event_stream):
+	* event-stream.c (syms_of_event_stream):
+	* event-stream.c (Fset_recent_keys_ring_size):
+	* event-stream.c (Fsit_for):
+	* event-stream.c (Fnext_event):
+	* event-stream.c (execute_help_form):
+	* event-stream.c (maybe_kbd_translate):
+	* event-stream.c:
+	* event-msw.c (vars_of_event_mswindows):
+	* event-msw.c (mswindows_wnd_proc):
+	* event-msw.c (mswindows_need_event):
+	* event-msw.c (mswindows_drain_windows_queue):
+	* event-msw.c (mswindows_pump_outstanding_events):
+	* event-msw.c:
+	* event-msw.c (slurp_thread):
+	* event-msw.c (struct ntpipe_slurp_stream):
+	* event-msw.c (HANDLE_TO_USID):
+	* event-Xt.c (emacs_Xt_handle_magic_event):
+	* event-Xt.c (x_event_to_emacs_event):
+	* event-Xt.c (x_reset_modifier_mapping):
+	* event-Xt.c (x_reset_key_mapping):
+	* event-Xt.c:
+	* eval.c (syms_of_eval):
+	* eval.c (warn_when_safe):
+	* eval.c (warn_when_safe_lispobj):
+	* eval.c (Fbacktrace_frame):
+	* eval.c (Fbacktrace):
+	* eval.c (top_level_set):
+	* eval.c (unbind_to_hairy):
+	* eval.c (specbind_magic):
+	* eval.c (specbind_unwind_wasnt_local):
+	* eval.c (call2_trapping_errors):
+	* eval.c (call1_trapping_errors):
+	* eval.c (catch_them_squirmers_call2):
+	* eval.c (call0_trapping_errors):
+	* eval.c (run_hook_trapping_errors):
+	* eval.c (catch_them_squirmers_eval_in_buffer):
+	* eval.c (call4_in_buffer):
+	* eval.c (call3_in_buffer):
+	* eval.c (call2_in_buffer):
+	* eval.c (call1_in_buffer):
+	* eval.c (call0_in_buffer):
+	* eval.c (run_hook):
+	* eval.c (run_hook_with_args_in_buffer):
+	* eval.c (Fapply):
+	* eval.c (Feval):
+	* eval.c (do_autoload):
+	* eval.c (un_autoload):
+	* eval.c (Fautoload):
+	* eval.c (Finteractive_p):
+	* eval.c (Fcommand_execute):
+	* eval.c (signal_quit):
+	* eval.c (call_with_suspended_errors):
+	* eval.c (signal_error):
+	* eval.c (return_from_signal):
+	* eval.c (Fcall_with_condition_handler):
+	* eval.c (run_condition_case_handlers):
+	* eval.c (condition_case_1):
+	* eval.c (Funwind_protect):
+	* eval.c (unwind_to_catch):
+	* eval.c (internal_catch):
+	* eval.c (Fmacroexpand_internal):
+	* eval.c (Fuser_variable_p):
+	* eval.c (Fdefconst):
+	* eval.c (Fdefvar):
+	* eval.c (Ffunction):
+	* eval.c (signal_call_debugger):
+	* eval.c (call_debugger):
+	* eval.c:
+	* emacs.c (main):
+	* emacs.c (sort_args):
+	* emacs.c (main_1):
+	* elhash.h:
+	* elhash.c:
+	* editfns.c (Fencode_time):
+	* editfns.c (Fdecode_time):
+	* editfns.c (Fuser_full_name):
+	* editfns.c:
+	* editfns.c (save_excursion_restore):
+	* ecrt0.c:
+	* dynarr.c:
+	* doprnt.c (emacs_doprnt_1):
+	* doc.c (verify_doc_mapper):
+	* doc.c (Fsnarf_documentation):
+	* doc.c (Fdocumentation):
+	* dll.c:
+	* dired.c (user_name_completion):
+	* dired.c (Fdirectory_files):
+	* dialog-x.c:
+	* dialog-msw.c:
+	* dgif_lib.c (FreeSavedImages):
+	* dgif_lib.c (DGifGetImageDesc):
+	* device.h:
+	* device.h (struct device):
+	* device.c (Fselect_device):
+	* device.c (allocate_device):
+	* device.c:
+	* device-x.c (Fx_keysym_on_keyboard_p):
+	* device-x.c (Fx_valid_keysym_name_p):
+	* device-x.c (x_IO_error_handler):
+	* device-x.c (x_delete_device):
+	* device-x.c (x_finish_init_device):
+	* device-x.c (x_init_device):
+	* device-x.c:
+	* device-msw.c (mswindows_init_device):
+	* dbxrc:
+	* database.c (vars_of_database):
+	* database.c (Fput_database):
+	* database.c (Fopen_database):
+	* database.c (berkdb_remove):
+	* database.c (berkdb_put):
+	* database.c (Fdatabasep):
+	* database.c (print_database):
+	* database.c:
+	* data.c (vars_of_data):
+	* data.c (syms_of_data):
+	* data.c (init_errors_once_early):
+	* data.c (prune_weak_lists):
+	* data.c (finish_marking_weak_lists):
+	* data.c (print_weak_list):
+	* data.c (Fmod):
+	* data.c (Fstring_to_number):
+	* data.c (Fnumber_to_string):
+	* data.c (Findirect_function):
+	* data.c (Fsetcdr):
+	* data.c (Ffloatp):
+	* data.c (Fsubr_interactive):
+	* data.c (Farrayp):
+	* data.c (Fkeywordp):
+	* data.c (Fnull):
+	* data.c:
+	* console.h (CONSOLE_NAME):
+	* console.h:
+	* console.c (vars_of_console):
+	* console.c (Fselect_console):
+	* console.c:
+	* console-x.h (DEVICE_X_COLORMAP):
+	* console-x.h (struct x_device):
+	* console-x.c (x_device_to_console_connection):
+	* console-tty.h (CONSOLE_TTY_FINAL_CURSOR_Y):
+	* console-tty.c (tty_init_console):
+	* console-tty.c:
+	* console-msw.h (struct mswindows_frame):
+	* conslots.h:
+	* config.h.in:
+	* cmds.c (internal_self_insert):
+	* cmds.c (Fforward_line):
+	* cmds.c (Fforward_char):
+	* cmds.c:
+	* cmdloop.c:
+	* chartab.c (mark_char_table_entry):
+	* chartab.c:
+	* casefiddle.c (casify_word):
+	* callproc.c (child_setup):
+	* callproc.c (Fcall_process_internal):
+	* callproc.c:
+	* callint.c (Fcall_interactively):
+	* bytecode.h:
+	* bytecode.c (execute_rare_opcode):
+	* bytecode.c (execute_optimized_program):
+	* bytecode.c:
+	* bufslots.h:
+	* buffer.h (BUFFER_REALLOC):
+	* buffer.h (GET_CHARPTR_INT_DATA_ALLOCA):
+	* buffer.h (GET_CHARPTR_EXT_DATA_ALLOCA):
+	* buffer.h:
+	* buffer.h (MAP_INDIRECT_BUFFERS):
+	* buffer.h (CHECK_LIVE_BUFFER):
+	* buffer.c (init_initial_directory):
+	* buffer.c (complex_vars_of_buffer):
+	* buffer.c (vars_of_buffer):
+	* buffer.c (finish_init_buffer):
+	* buffer.c (Fget_file_buffer):
+	* buffer.c (Fbuffer_list):
+	* buffer.c (mark_buffer):
+	* balloon_help.c (balloon_help_move_to_pointer):
+	* balloon_help.c (show_help):
+	* balloon_help.c:
+	* backtrace.h:
+	* alloc.c (garbage_collect_1):
+	* alloc.c (sweep_strings):
+	* alloc.c (sweep_compiled_functions):
+	* alloc.c (sweep_bit_vectors_1):
+	* alloc.c (sweep_vectors_1):
+	* alloc.c (sweep_lcrecords_1):
+	* alloc.c (tick_lcrecord_stats):
+	* alloc.c (pure_string_sizeof):
+	* alloc.c (mark_conses_in_list):
+	* alloc.c (mark_object):
+	* alloc.c (report_pure_usage):
+	* alloc.c (make_pure_float):
+	* alloc.c (make_pure_string):
+	* alloc.c (free_managed_lcrecord):
+	* alloc.c (mark_string):
+	* alloc.c (noseeum_make_marker):
+	* alloc.c (allocate_event):
+	* alloc.c (Fbit_vector):
+	* alloc.c (Fvector):
+	* alloc.c (make_float):
+	* alloc.c (Fmake_list):
+	* alloc.c (Flist):
+	* alloc.c (FREE_FIXED_TYPE_WHEN_NOT_IN_GC):
+	* alloc.c (PUT_FIXED_TYPE_ON_FREE_LIST):
+	* alloc.c (DECLARE_FIXED_TYPE_ALLOC):
+	* alloc.c (dbg_constants):
+	* alloc.c (gc_record_type_p):
+	* alloc.c (free_lcrecord):
+	* alloc.c (xmalloc):
+	* alloc.c (NOSEEUM_INCREMENT_CONS_COUNTER):
+	* abbrev.c:
+	* Makefile.in.in (mostlyclean):
+	* Makefile.in.in (external_client_xlib_objs_nonshared):
+	* Makefile.in.in (temacs_link_args):
+	* Makefile.in.in (release):
+	* Makefile.in.in (dnd_objs):
+	* Makefile.in.in (objs):
+	* Makefile.in.in (PROGNAME):
+	* EmacsShell.c: cast strings to (XtPointer)
+	* EmacsFrame.c: cast strings to (XtPointer)
+	- mega patch
+	- rewrite basic lisp functions for speed
+	- rewrite bytecode interpreter for speed
+	- rewrite list looping constructs for speed and safety using
+	  tortoise/hare.
+	- use size_t where appropriate.
+	- new hashtable implementation
+	- cleanup implementation of opaques
+	- opaques can now be purecopy'ed
+	- move some cl functionality into C for speed.
+	- remove last remaining VMS support
+	- spelling fixes
+	- improve gdb/dbx debugger support
+	- move pure.c back into alloc.c for performance
+	- enable report_pure_usage() if --memory-usage-stats
+	- remove remnants of Energize support (EMACS_BTL, cadillac...)
+	- don't use symbols with leading `_' or embedded `__'
+	- globally cleanup duplicated semicolons `;;'
+	- I give in on %p vs %lx - we use printf("%lx",(long) p)
+	  globally.
+	- globally replace O_NDELAY with O_NONBLOCK.
+	- globally replace CDISABLE with _POSIX_VDISABLE.
+	- use O_RDONLY and O_RDWR instead of magic `0' and `2'.
+	- define (and maybe use!) STDERR_FILENO and friends.
+	- add support for macros defined in C
+	- `when', `unless', `not' and `defalias' now defined in C,
+	  so that they are universally available.
+	- rename defvar_mumble to defvar_magic
+	- rename RETURN__ to RETURN_SANS_WARNINGS
+	- use consistent style of initial caps in error messages
+	- implement last, butlast, nbutlast, copy-list in C.
+	- provide typedefs for all struct Lisp_foo types
+	- Lisp_Objects must be initialized to Qnil rather than 0.
+	- make sure XEmacs runs (slowly) with always_gc == 1;
+	- fast and safe LOOP_* macros
+	- change calls to XSETOBJ to XSETFOO
+	- replace calls to XSETINT by make_int()
+	- plug up memory leaks
+	- use style markobj (foo), not silly ((markobj) (foo))
+	- use XFLOAT_DATA (obj) instead of float_data (XFLOAT (obj))
+
+1998-12-02  P. E. Jareth Hein  <jareth@camelot.co.jp>
+
+	* unexec.c: Changed a #ifndef statement to fix XEmacs on BSDI 3.0
+
+1998-11-28  SL Baur  <steve@altair.xemacs.org>
+
+	* XEmacs 21.2-beta4 is released.
+
+1998-11-27  SL Baur  <steve@altair.xemacs.org>
+
+	* mule-charset.c (complex_vars_of_mule_charset): Fix graphic
+	property in control-1 charset.
+	From Julian Bradfield <jcb@daimi.au.dk>
+
+1998-11-26  Jan Vroonhof  <vroonhof@math.ethz.ch>
+
+	* gui-x.c (button_item_to_widget_value): Ignore :key-sequence
+	keyword.
+	Add stub for :label.
+
+	* gui.c (gui_item_add_keyval_pair): ditto.
+
+	* menubar-x.c (menu_item_descriptor_to_widget_value_1): Ignore
+	:key-sequence keyword.
+	Add stub for:label.
+	Support :active for submenus like the Windows code and FSF Emacs.
+
+1998-11-27  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* dired.c (make_directory_hash_table): make_string() is OK because
+	readdir() Mule-encapsulates.
+
+1998-11-26  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* fns.c (Fbase64_encode_string): Fix docstring.
+	(Fbase64_decode_string): Ditto.
+
+1998-11-26  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* editfns.c (Ftranslate_region): Use
+	convert_bufbyte_string_into_emchar_string().
+
+1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* editfns.c (Ftranslate_region): Accept vectors and char-tables as
+	well as strings.
+	(Ftranslate_region): Turn table into an array of Emchars for
+	larger regions.
+
+1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* chartab.c (Freset_char_table): Fix wrong placement of #endif.
+
+1998-11-24  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* chartab.c (Freset_char_table): Don't blindly fill chartables of
+	type `char' with nils.
+
+	* chartab.c (canonicalize_char_table_value): Coerce ints to chars
+	for tables of type `char'.
+
+1998-11-26  Didier Verna  <verna@inf.enst.fr>
+
+	* input-method-xlib.c (Initialize_Locale): don't call
+	XtSetLanguageProc. We've done the whole work here.
+	* input-method-xfs.c (Initialize_Locale): ditto.
+	* input-method-motif.c (Initialize_Locale): ditto.
+
+1998-11-26  Didier Verna  <verna@inf.enst.fr>
+
+	* process-unix.c (unix_create_process): handle properly
+	Vfile_name_coding_system for converting the program and directory
+	names.
+
+1998-11-27  SL Baur  <steve@altair.xemacs.org>
+
+	* m/arm.h: New file.
+	From James LewisMoss <dres@ioa.com>
+
+1998-11-27  Takeshi Hagiwara  <hagiwara@ie.niigata-u.ac.jp>
+
+	* m/mips-nec.h:
+	Fix the realpath() problem of UnixWare2.1.3.
+	Patches for NEC's sysv4.2 machine.
+
+1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* dired.c (Fdirectory_files): Remove redundant code.
+
+1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* fns.c (free_malloced_ptr): New function.
+	(XMALLOC_OR_ALLOCA): New macro.
+	(XMALLOC_UNBIND): Ditto.
+	(Fbase64_encode_region): Use malloc() for large blocks; arrange it
+	to be freed in case of non-local exit.
+	(Fbase64_encode_string): Ditto.
+	(Fbase64_decode_region): Ditto.
+	(Fbase64_decode_string): Ditto.
+	(STORE_BYTE): New macro.
+	(base64_decode_1): Use it.
+
+1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* fns.c (base64_value_to_char): Base64 stuff.
+
+1998-11-24  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* editfns.c (Fbuffer_substring): New function.
+
+	* lisp.h: Declare make_string_from_buffer_no_extents().
+
+	* insdel.c (make_string_from_buffer_1): New function.
+	(make_string_from_buffer_no_extents): Ditto.
+
+1998-11-15  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
+
+	* linuxplay.c: Including <fcntl.h> instead of <sys/fcntl.h> makes
+	sound work on AIX with OSS installed.  Linux should still work.
+
+1998-11-03  Andy Piper  <andyp@parallax.co.uk>
+
+	* config.h.in: name change for cygwin/version.h
+
+	* configure.in: check for cygwin/version.h now.
+
+	* cygwin32.h: track CYGWIN_DLL_VERSION_MAJOR ->
+	CYGWIN_VERSION_DLL_MAJOR name change in cygwin b20.
+	move cygwin32/version.h to cygwin/version.h
+
+1998-11-03  Olivier Galibert  <galibert@pobox.com>
+
+	* lisp.h  (struct  Lisp_Bit_Vector): Fix declaration of  bits from
+	int to long.
+
+1998-10-22  Andy Piper  <andyp@parallax.co.uk>
+
+	* cygwin32.h: track CYGWIN_DLL_VERSION_MAJOR ->
+	CYGWIN_VERSION_DLL_MAJOR name change in cygwin b20.
+	enable BROKEN_SIGIO under b20 to make QUIT work.
+
+1998-10-22  Andy Piper  <andyp@parallax.co.uk>
+
+	* frame-msw.c (mswindows_size_frame_internal): force frame sizing
+	to fit within the constraints of the screen size. I.e. make the
+	frame small enough to fit and move it if some of it will be
+	off-screen.
+
+1998-10-19  Greg Klanderman  <greg@alphatech.com>
+
+	* dired.c: conditionalize inclusion of user-name-completion
+	primitives on non-Windows NT.  The needed functions don't exist on NT.
+
+1998-11-24  SL Baur  <steve@altair.xemacs.org>
+
+	* gifrlib.h: Clean up types for 64 bit compile.
+	* dgif_lib.c (DGifInitRead): Ditto.
+	(MakeSavedImage): Ditto.
+	* emacs.c (decode_path): Ditto.
+	From Steve Carney <carney@pa.dec.com>
+
+1998-10-16  William M. Perry  <wmperry@aventail.com>
+
+	* glyphs-msw.c (bitmap_table): Fixed typo in builtin bitmaps
+	  (cehckboxes instead of checkboxes).
+
+1998-10-15  SL Baur  <steve@altair.xemacs.org>
+
+	* XEmacs 21.2-beta3 is released.
+
+1998-10-13  Raymond Toy  <toy@rtp.ericsson.se>
+
+	* runemacs.c (WinMain): If the basename is "rungnuclient.exe", run
+	gnuclient.  Otherwise, we run xemacs as we always did.  This gets
+	rid of the annoying DOS window when running gnuclient.
+
+1998-10-13  Andy Piper  <andyp@parallax.co.uk>
+
+	* dragdrop.c (vars_of_dragdrop): rename HAVE_MSWINDOWS ->
+	HAVE_MS_WINDOWS typo.
+
+1998-10-13  SL Baur  <steve@altair.xemacs.org>
+
+	* process-unix.c (unix_send_process): Set closed flag on writable
+	pipe after SIGPIPE is received and before we call deactivate_process.
+
+1998-10-03  Gunnar Evermann  <ge204@eng.cam.ac.uk>
+
+	* window.c (Fset_window_start): respect narrowing when
+	checking wheter start is at the beginning of a line.
+	(Fset_window_buffer): Ditto
+	Fixes repeatable crash in VM.
+
+1998-10-09  SL Baur  <steve@altair.xemacs.org>
+
+	* window.c (specifier_vars_of_window): Set default vertical
+	divider width to 1 on ttys.
+
+1998-10-08  Martin Buchholz  <martin@xemacs.org>
+
+	* alloc.c:
+	* unexec.c:
+	* malloc.c:
+	Add <stddef.h> to get ptrdiff_t declaration
+
+1998-10-07  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+
+	* scrollbar-msw.c: Use the same vertical scrollbar drag hack as
+	  is used for Motif or Lucid scrollbars under X.
+
+1998-10-08  Pierre Wendling  <pw@ebc.vbe.dec.com>
+
+	* m/alpha.h (UNEXEC): quoted to avoid bad expansion when running
+	`configure'
+
+1998-10-06  Takeshi Hagiwara  <hagiwara@ie.niigata-u.ac.jp>
+
+	* frame-x.c (x_delete_frame): Fix an argument of XtDestroyWidget.
+
+1998-10-05  Andy Piper  <andyp@parallax.co.uk>
+
+	* s/cygwin32.h: more cygwin b20 reorganisation.
+
+1998-10-01  Raymond Toy  <toy@rtp.ericsson.se>
+
+	* nas.c: Added necessary support functions to be able to handle
+	WAVE files in memory, just like the support for SND files in
+	memory.
+
+1998-09-30  SL Baur  <steve@altair.xemacs.org>
+
+	* callproc.c (child_setup): Fix spelling typo.
+
+1998-09-29  SL Baur  <steve@altair.xemacs.org>
+
+	* XEmacs 21.2-beta2 is released.
+
+1998-09-27  P. E. Jareth Hein  <jareth@camelot.co.jp>
+
+	* regex.c (re_match_2_internal): Add in code to reset lowest_active_reg
+	to prevent memory corruption in the case of jumping out of a series of
+	nested match patterns. This is a rather brute force approach, though.
+
+1998-09-02  Andy Piper  <andyp@parallax.co.uk>
+
+	* config.h.in: ditto.
+
+	* s/cygwin32.h: rearrange declarations to cope with cygwin
+ 	b20. Include cygwin32/version.h if it exists.
+
+1998-09-20  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+
+	* device-msw.c (mswindows_init_device): Call new
+	  mswindows_enumerate_fonts() function in objects-msw.c instead
+	  of font_enum_callback_1() to enumerate fonts.
+
+	  font_enum_callback_1() and _2() moved to objects-msw.c.
+
+	* faces.c (complex_vars_of_faces): Make the mswindows default
+	  face font fully specified and provide some fallbacks.
+
+	* objects-msw.c: font_enum_callback_1() and _2() moved here
+	  from objects-msw.c. Obtain the enumerated font's character
+	  sets by table lookup instead of using the locale-specific
+	  string provided by Windows.
+
+	  New public non-method mswindows_enumerate_fonts() that fills
+	  in the supplied mswindows device's font list.
+
+	  mswindows_initialize_font_instance: Use the supplied name
+	  variable instead of f->name when signalling errors. Match font
+	  weights and character sets using lookup tables which handle
+	  spaces instead of by frobbing.
+
+1998-09-20  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+
+	* process-nt.c: Define an arbitrary limit, FRAGMENT_CODE_SIZE,
+	  on the size of code fragments passed to run_in_other_process.
+
+	  run_in_other_process(): Use FRAGMENT_CODE_SIZE to determine
+	  the amount of memory to allocate in the other process.
+
+	  Removed sigkill_code_end(), sigint_code_end() and
+	  sig_enable_code_end() since they are now redundant.
+
+	  send_signal() and enable_child_signals(): Don't try to work
+	  out the end of the code fragments passed to
+	  run_in_other_process()
+
+1998-09-10  Kazuyuki IENAGA  <ienaga@jsys.co.jp>
+
+	* src/s/freebsd.h: Added __ELF__ and compiler/liker flags for
+	FreeBSD-current.
+
+	* src/unexelf.c: Partially synched with FSF's 20.3.
+
+1998-09-10  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* insdel.c (signal_after_change): Map across indirect buffers
+	here, and not in the upper-level functions.
+	(signal_first_change): Don't check for Armageddon.
+	(signal_before_change): Map across indirect buffers here.
+	(prepare_to_modify_buffer): ...and here.
+
+1998-09-09  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* insdel.c (signal_after_change): Add return value.
+	(buffer_insert_string_1): Use it.
+	(buffer_delete_range): Ditto.
+	(buffer_replace_char): Ditto.
+	(cancel_multiple_change): Map the indirect buffers.
+
+1998-09-06  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* insdel.c (init_buffer_text): Remove INDIRECT_P parameter.
+	(uninit_buffer_text): Ditto.
+
+	* buffer.c (Fmake_indirect_buffer): Implement stricter
+	error-checking.
+
+1998-09-04  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* insdel.c (change_function_restore): Reverse order of
+	function-call and assignment.
+	(first_change_hook_restore): Ditto.
+
+	* extents.c (mark_extent_auxiliary): Mark them.
+	(Fset_extent_property): Set them.
+	(Fextent_property): Get them.
+	(Fextent_properties): Ditto.
+	(vars_of_extents): Set their default.
+
+	* extents.h (struct extent_auxiliary): Add before_change_functions
+	and after_change_functions.
+
+	* insdel.c (signal_before_change): Use it.
+	(signal_after_change): Ditto.
+
+	* extents.c (report_extent_modification): New function.
+
+	* insdel.c (signal_before_change): Don't check for Armageddon.
+	(signal_after_change): Ditto.
+
+1998-09-11  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
+
+	* redisplay.c (redisplay_window): make sure a new starting point
+	is chosen if it somehow got moved from the beginning of the line
+	-- this can happen because Fwiden was called recently.
+
+	* window.c (Fset_window_start): set start_at_line_beg correctly
+	(Fset_window_buffer): Ditto
+
+1998-09-06  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* insdel.c (init_buffer_text): Remove INDIRECT_P parameter.
+	(uninit_buffer_text): Ditto.
+
+	* buffer.c (Fmake_indirect_buffer): Implement stricter
+	error-checking.
+
+1998-05-14  Jan Vroonhof  <vroonhof@math.ethz.ch>
+
+	* emacs.c (main_1): Removed references to *vars_of_filelock.
+
+	* lisp.h: Added Fsystem_name.
+
+	* filelock.c: Replaced by version from FSF 20.2. Now implements
+	locking by using symlinks which is NFS safe. However keep the
+	GCPRO's in lock_file and the calls to callx_in_buffer like our old
+	version (and of course use ansi C, acessor macros, etc).
+
+1998-09-06  Jan Vroonhof  <vroonhof@math.ethz.ch>
+
+	* process-unix.c (unix_create_process): Reset SIGHUP handler to
+	SIG_DFL. We now try to conserve any inherted SIG_IGN settings
+	in init_signals_very_early. However these should not be passed
+	on to children attached to the new pty.
+
+1998-08-28  Andy Piper  <andyp@parallax.co.uk>
+
+	* glyphs-eimage.c (png_instantiate_unwind): clean up eimage after use.
+
+1998-09-07  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+
+	* fileio.c (file-name-directory, file_name_as_directory):
+	  Don't call CORRECT_DIR_SEPS, even when #defined WINDOWSNT.
+
+1998-09-02  Andy Piper  <andyp@parallax.co.uk>
+
+	* emacs.c (main_1): init_ralloc() if initialised and we have REL_ALLOC
+
+	* ralloc.c: uncomment __morecore.
+
+1998-09-92  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+
+	* event-msw.c(winsock_writer): Supply a dummy 4th argument to
+	  WriteFile() to fix a winsock 1.x bug on Win95.
+
+1998-08-28  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* event-Xt.c (emacs_Xt_mapping_action): Check for device being
+ 	deleted.
+	(x_event_to_emacs_event): Ditto.
+	(emacs_Xt_handle_focus_event): Ditto.
+	(emacs_Xt_handle_magic_event): Ditto.
+
+	* console-x.h (struct x_device): New flag being_deleted.
+	(DEVICE_X_BEING_DELETED): New macro.
+
+	* device-x.c (x_IO_error_handler): Throw to top-level instead of
+	returning.  Before doing that, set the being_deleted flag on the
+	device.
+
+1998-08-27  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* device-x.c (x-seppuku-on-epipe): Removed.
+
+1998-08-26  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
+
+	* frame-x.c (x_delete_frame): Flush the X output buffer after
+	calling XtDestroyWidget to ensure that the windows are really
+	killed right now.
+
+1998-08-26  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* menubar-x.c (my_run_hook): New unused function.
+	(pre_activate_callback): Use run_hook for Qactivate_menubar_hook,
+	since we ignore the results of the contained functions anyway.
+
+1998-08-26  P. E. Jareth Hein  <jareth@camelot.co.jp>
+
+	* glyphs-eimage.c (gif_instantiate): Fix a crash in handling
+	interlaced GIF files that are smaller than 4 lines high...
+
+1998-08-31  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* buffer.c (map_over_sharing_buffers): Deleted.
+
+	* insdel.c (MAP_INDIRECT_BUFFERS): Move to buffer.h.
+
+	* buffer.c (Fkill_buffer): Keep indirect_children updated while
+	killing them.
+
+1998-08-31  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* insdel.c (buffer_insert_string_1): Advance the point bytind in
+	all the buffers.
+	(buffer_delete_range): Ditto.
+
+	* marker.c (init_buffer_markers): Set point-marker to the value of
+	point in an indirect buffer.
+
+1998-08-30  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* undo.c (undo_prelude): Test last-undo-buffer against base
+ 	buffer.
+
+	* insdel.c (MAP_INDIRECT_BUFFERS): Use it.
+
+	* buffer.h (BUFFER_BASE_BUFFER): New macro.
+
+1998-08-30  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* insdel.c (init_buffer_text): Initialize it here.
+
+	* line-number.c: Address line_number_cache through buffer->text.
+
+	* buffer.c (mark_buffer): Mark line number cache.
+
+	* bufslots.h (line_number_cache): Move to struct buffer_text.
+
+	* insdel.c (buffer_insert_string_1): Propagate signals and changes
+	across the children buffers.
+	(buffer_delete_range): Ditto.
+	(buffer_replace_char): Ditto.
+	(gap_left): Ditto.
+	(gap_right): Ditto.
+
+	* insdel.c (MAP_INDIRECT_BUFFERS): New macro.
+
+	* buffer.c (Fmake_indirect_buffer): Uncomment.
+
+1998-08-31  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* macros.c (Fend_kbd_macro): Remove trailing period from error
+	message.
+	(Fexecute_kbd_macro): Ditto.
+
+1998-08-21  Greg Klanderman  <greg@alphatech.com>
+
+	* dired.c (Fuser_name_completion): remove optional 2nd argument.
+	(Fuser_name_completion_1): new function to return uniqueness
+	indication in addition to the user name completion.
+	(user_name_completion): change type of `uniq' argument.
+
+1998-08-19  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
+
+	* lread.c (vars_of_lread): Removed `source-directory' variable.
+
+1998-08-22  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* fileio.c (Ffile_readable_p): Apply the DOS/Windows logic to
+	Cygwin.
+
+1998-08-19  SL Baur  <steve@altair.xemacs.org>
+
+	* dired.c (vars_of_dired): Fix misapplied patch.
+
+1998-08-16  Martin Buchholz  <martin@xemacs.org>
+
+	* fns.c (Fremrassq, remrassq_no_quit):
+	A XCAR that should have been an XCDR turned Fremrassq into Fremassq
+
+1998-07-17  Didier Verna  <verna@inf.enst.fr>
+
+	* redisplay-x.c (x_get_gc): returns a GC with a FillStipple fill
+	style as foreground GC for faces that have the `dim' property.
+	(x_output_string): when the `dim' face property is set,
+	ensure the gray pixmap has been created, and get a proper
+	foreground GC to draw the text.
+
+1998-08-09  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+
+	* event-msw.c (mswindows_wnd_proc): Workaround for a Win95 bug:
+	  Manually track the state of the left and right Ctrl and Alt
+	  modifiers.
+
+1998-08-07 Matt Stupple <matts@tibco.com>
+
+	* ntproc.c: don't wait on char_consumed at thread entry.
+	Additionally, to get the 'process' marked as finished, ensure
+	that the CHILD_ACTIVE macro returns false, so before exiting
+	close char_avail and set it to NULL, and close other handles
+	to reduce handle leak problems.
+
+1998-08-09  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+
+	* menubar-msw.c (displayable_menu_item): take account of menu
+	  depth when deciding whether to try to display accelerators.
+
+1998-08-04  Andy Piper  <andyp@parallax.co.uk>
+
+	* event-msw.c: use MsgWaitForMultipleObjects if there are no
+	subprocesses.
+
+	* glyphs-msw.c: fix a couple of potential handle leaks.
+
+1998-08-04  P. E. Jareth Hein  <jareth@camelot.co.jp>
+
+	* dgif_lib.c gif_io.c gifrlib.h: New files to put GIF
+	  *decoding ONLY* back into the core.
+	* glyphs-eimage.c: Change referenced header file for GIF
+	  reading to point to the incore version.
+
+1998-07-20  Martin Buchholz  <martin@xemacs.org>
+
+	* casefiddle.c (casify_object):
+	Change algorithm from O(N**2) to O(N).
+	Code cleanup.
+	Doc string cleanup.
+
+1998-07-22  Greg Klanderman  <greg@alphatech.com>
+
+	* dired.c (file_name_completion_unwind): don't leak the cons.
+
+1998-07-20  Greg Klanderman  <greg@alphatech.com>
+
+	* dired.c (Fuser_name_completion): new function.
+	(Fuser_name_all_completions): new function.
+	(user_name_completion): new function.
+	(syms_of_dired): 2 new DEFSUBRs.
+	(vars_of_dired): initialize user name cache vars.
+
+1998-07-29  P. E. Jareth Hein  <jareth@camelot.co.jp>
+
+	* glyphs-eimage.c (png_instantiate): Add proper handling for background
+ 	colors taken from the default face.  Also correct a thinko in
+	transparency (not alpha) handling.
+
+1998-07-23  Martin Buchholz  <martin@xemacs.org>
+
+	* s/decosf4-0.h:  Use a perfectly ordinary link.  Nuke BSD crap.
+	* unexalpha.c: ANSI C-ize.  Clean compiler warnings.
+	* lread.c (Fload_internal):  Be very careful with printfs of
+	size_t's
+	* gui-x.c (menu_name_to_accelerator): tolower wants an `int'
+	argument.
+
+1998-07-27  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
+
+	* callint.c (Fcall_interactively): GCPRO prompt string before
+	passing it to Fread_key_sequence
+
+1998-07-27  SL Baur  <steve@altair.xemacs.org>
+
+	* keymap.c (vars_of_keymap): Initialize Vkey_translation_map and
+	Vvertical_divider_map.
+
+	* mule-canna.c (vars_of_mule_canna): Initialize every symbol to
+	Qnil or 0, none were initialized prior to this change.
+
+	Rename misnamed `V' prefixed integer variables:
+	Vcanna_empty_info, Vcanna_through_info, Vcanna_underline,
+	Vcanna_inhibit_hankakukana, Vcanna_henkan_length, Vcanna_henkan_revPos,
+	Vcanna_henkan_revLen, Vcanna_ichiran_length, Vcanna_ichiran_revPos,
+	Vcanna_ichiran_revLen.
+
+	Rename misnamed `V' prefixed integer variables and initialize
+	properly in the vars_of routine.
+	Vcanna_mode_AlphaMode, Vcanna_mode_EmptyMode, Vcanna_mode_KigoMode,
+	Vcanna_mode_YomiMode, Vcanna_mode_JishuMode, Vcanna_mode_TankouhoMode,
+	Vcanna_mode_IchiranMode, Vcanna_mode_YesNoMode, Vcanna_mode_OnOffMode,
+	Vcanna_mode_AdjustBunsetsuMode, Vcanna_mode_ChikujiYomiMode,
+	Vcanna_mode_ChikujiTanMode, Vcanna_mode_HenkanMode,
+	Vcanna_mode_HenkanNyuryokuMode, Vcanna_mode_ZenHiraHenkanMode,
+	Vcanna_mode_HanHiraHenkanMode, Vcanna_mode_ZenKataHenkanMode,
+	Vcanna_mode_HanKataHenkanMode, Vcanna_mode_HanKataHenkanMode,
+	Vcanna_mode_ZenAlphaHenkanMode, Vcanna_mode_HanAlphaHenkanMode,
+	Vcanna_mode_ZenHiraKakuteiMode, Vcanna_mode_HanHiraKakuteiMode,
+	Vcanna_mode_ZenKataKakuteiMode, Vcanna_mode_HanKataKakuteiMode,
+	Vcanna_mode_ZenAlphaKakuteiMode, Vcanna_mode_HanAlphaKakuteiMode,
+	Vcanna_mode_HexMode, Vcanna_mode_BushuMode, Vcanna_mode_ExtendMode,
+	Vcanna_mode_RussianMode, Vcanna_mode_GreekMode, Vcanna_mode_LineMode,
+	Vcanna_mode_ChangingServerMode, Vcanna_mode_HenkanMethodMode,
+	Vcanna_mode_DeleteDicMode, Vcanna_mode_TourokuMode,
+	Vcanna_mode_TourokuEmptyMode, Vcanna_mode_TourokuHinshiMode,
+	Vcanna_mode_TourokuDicMode, Vcanna_mode_QuotedInsertMode,
+	Vcanna_mode_BubunMuhenkanMode, Vcanna_mode_MountDicMode,
+	Vcanna_fn_SelfInsert, Vcanna_fn_FunctionalInsert,
+	Vcanna_fn_QuotedInsert, Vcanna_fn_JapaneseMode, Vcanna_fn_AlphaMode,
+	Vcanna_fn_HenkanNyuryokuMode, Vcanna_fn_Forward, Vcanna_fn_Backward,
+	Vcanna_fn_Next, Vcanna_fn_Prev, Vcanna_fn_BeginningOfLine,
+	Vcanna_fn_EndOfLine, Vcanna_fn_DeleteNext, Vcanna_fn_DeletePrevious,
+	Vcanna_fn_KillToEndOfLine, Vcanna_fn_Henkan, Vcanna_fn_Kakutei,
+	Vcanna_fn_Extend, Vcanna_fn_Shrink, Vcanna_fn_AdjustBunsetsu,
+	Vcanna_fn_Quit, Vcanna_fn_ConvertAsHex, Vcanna_fn_ConvertAsBushu,
+	Vcanna_fn_KouhoIchiran, Vcanna_fn_BubunMuhenkan, Vcanna_fn_Zenkaku,
+	Vcanna_fn_Hankaku, Vcanna_fn_ExtendMode, Vcanna_fn_ToUpper,
+	Vcanna_fn_Capitalize, Vcanna_fn_ToLower, Vcanna_fn_Hiragana,
+	Vcanna_fn_Katakana, Vcanna_fn_Romaji, Vcanna_fn_BaseHiragana,
+	Vcanna_fn_BaseKatakana, Vcanna_fn_BaseEisu, Vcanna_fn_BaseZenkaku,
+	Vcanna_fn_BaseHankaku, Vcanna_fn_BaseKana, Vcanna_fn_BaseKakutei,
+	Vcanna_fn_BaseHenkan, Vcanna_fn_BaseHiraKataToggle,
+	Vcanna_fn_BaseZenHanToggle, Vcanna_fn_BaseKanaEisuToggle,
+	Vcanna_fn_BaseKakuteiHenkanToggle, Vcanna_fn_BaseRotateForward,
+	Vcanna_fn_BaseRotateBackward, Vcanna_fn_Touroku, Vcanna_fn_HexMode,
+	Vcanna_fn_BushuMode, Vcanna_fn_KigouMode, Vcanna_fn_Mark,
+	Vcanna_fn_TemporalMode, Vcanna_key_Nfer, Vcanna_key_Xfer,
+	Vcanna_key_Up, Vcanna_key_Left, Vcanna_key_Right, Vcanna_key_Down,
+	Vcanna_key_Insert, Vcanna_key_Rollup, Vcanna_key_Rolldown,
+	Vcanna_key_Home, Vcanna_key_Help, Vcanna_key_KP_Key,
+	Vcanna_key_Shift_Nfer, Vcanna_key_Shift_Xfer, Vcanna_key_Shift_Up,
+	Vcanna_key_Shift_Left, Vcanna_key_Shift_Right, Vcanna_key_Shift_Down,
+	Vcanna_key_Cntrl_Nfer, Vcanna_key_Cntrl_Xfer, Vcanna_key_Cntrl_Up,
+	Vcanna_key_Cntrl_Left, Vcanna_key_Cntrl_Right, Vcanna_key_Cntrl_Down
+
+1998-07-16  Jan Vroonhof  <vroonhof@math.ethz.ch>
+
+	* event-Xt.c (x_to_emacs_keysym): Return nil for modifier keysyms.
+	(x_event_to_emacs_event): Let x_to_emacs_keysym check for modifier
+	keys thus no longer considering all keysyms on a key.
+
+1998-07-19  SL Baur  <steve@altair.xemacs.org>
+
+	* XEmacs 21.2-beta1 is released.
+
+1998-07-12  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
+
+	* eldap.c (Fldap_search_internal): When converting the list of
+	attributes to search Copy the final 0 from Lisp strings to C
+	strings.
+	Check base, not Vldap_default_base as a a string
+
+1998-07-13  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+
+	* nt.c: Remove Vstdio_str; already defined in console-stream.c.
+
+	* unexnt.c: Unconditionally define bss_start and bss_size, and
+	  ensure that they don't go in the .bss section.
+
+1998-07-17  Olivier Galibert  <galibert@pobox.com>
+
+	* glyphs-x.c (convert_EImage_to_XImage):  Fix previous patch (conv
+	byte order is dependant  of  the local  byte order).
+	From Takeshi Hagiwara <hagiwara@ie.niigata-u.ac.jp>
+
+1998-07-18  SL Baur  <steve@altair.xemacs.org>
+
+	* glyphs-msw.c (mswindows_resource_normalize): Qresource ->
+	Qmswindows_resource.
+	From Jonathan Harris <jhar@tardis.ed.ac.uk>
+
+1998-07-12  SL Baur  <steve@altair.xemacs.org>
+
+	* general.c (syms_of_general): Add defsymbol for Qresource.
+
+	* glyphs-msw.c (vars_of_glyphs_mswindows): Rename Qresource to
+	Qmswindows_resource.
+	(TopLevel): Rename 'resource image format to 'mswindows_resource.
+	(mswindows_resource_validate): Rename.
+	(mswindows_resource_normalize): Rename.
+	(mswindows_resource_possible_dest_types): Rename.
+	(mswindows_resource_instantiate): Rename.
+	(image_instantiator_format_create_glyphs_mswindows): Replace
+	`resource' with `mswindows.resource'.
+
+	* XEmacs 21.0-pre5 is released.
+
+1998-07-10  SL Baur  <steve@altair.xemacs.org>
+
+	* mule-wnnfns.c (Fwnn_open): Correctly trap on misdefined Wnn
+	server type in environment.
+	Use alloca-ed strings instead of tiny fixed size ones.
+
+1998-07-09  SL Baur  <steve@altair.xemacs.org>
+
+	* XEmacs 21.0-pre4 is released.
+
+1998-07-01  James N. Potts  <jnpotts@plutonium.net>
+
+	* fileio.c: (expand_file_name): under win32: Don't treat names
+	as UNC names if a drive letter has been specified.  If a drive
+	has been specified, strip out extra directory-seperators that
+	reportedly cause problems under Win95.
+
+1998-07-09  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+
+	* windowsnt.h: Define DUMP_SEPARATE_SECTION when building with
+	  MSVC >= 5.0. Put emacs init and zero-init data in a special
+	  section of the executable when this is defined.
+
+	* unexnt.c, ntheap.h:
+	  Removed unused find_section() and get_section_size().
+
+	* unexnt.c:
+	  Fix up the executable's checksum after dumping otherwise the
+	  profiler complains.
+	  When DUMP_SEPARATE_SECTION is defined, don't need to dump
+	  zero-init data separately from init data. Dump emacs data
+	  into a special section of the executable.
+	  When DUMP_SEPARATE_SECTION not defined, dump .bss up to
+	  my_ebss instead of up to the end of bss.
+
+1998-07-09  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+
+	* filelock.c: Removed Vconfigure_lock_directory - already
+	  defined in emacs.c.
+
+	* frame-msw.c: Removed Qinitially_unmapped and Qpopup - already
+	  defined in frame.c and general.c respectively.
+
+	* glyphs-msw.c: Removed Qresource - already defined in
+	  general.c.
+
+1998-07-05  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
+
+	* eldap.c (Fldap_search_internal): Docstring fixes
+
+1998-07-04  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+
+	* nt.c (init_environment): Removed unused PRELOAD_WINSOCK,
+	  EMACSDOC and TERM variables. Added EMACSDEBUGPATHS,
+	  EMACSPACKAGEPATH and INFOPATH variables.
+	  Removed unused get_emacs_configuration function.
+
+	* s/windowsnt.h: Don't define EMACS_CONFIGURATION here because
+	  it is now defined at build-time by the makefile.
+
+1998-07-01  James N. Potts  <jnpotts@plutonium.net>
+
+	* fileio.c: (expand_file_name): under win32: Don't treat names as
+	UNC names if a drive letter has been specified.  If a drive has
+	been specified, strip out extra directory-seperators that
+	reportedly cause problems under Win95.
+
+1998-07-05  Andy Piper  <andyp@parallax.co.uk>
+
+	* faces.c (complex_vars_of_faces): for the gui-element face don't
+	fallback to the default face, instead provide reasonable default
+	fallbacks that were previously hardcoded elsewhere.
+
+1998-07-06  Olivier Galibert  <galibert@pobox.com>
+
+	* glyphs-x.c (convert_EImage_to_XImage): Fix pixel writing problem
+	when the X server endianness is different than the client's one.
+
+1998-06-29  Kyle Jones  <kyle_jones@wonderworks.com>
+
+	* eval.c (run_hook_with_args_in_buffer): Check
+	  default (non-buffer-local) value of hook for
+	  nil before treating it as a function.  Don't initialize
+	  the `globals' variable twice.
+
+1998-06-24  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+
+	* fileio.c: Don't do directory seperator canonicalisation in
+	  substitute-in-file-name because we don't know that the
+	  filename refers to a local file.
+
+1998-06-24  Adrian Aichner  <adrian@xemacs.org>
+
+	* process-nt.c (nt_create_process): Try appending the standard
+	  executable file extensions to the filename if none supplied.
+
+1998-06-29  SL Baur  <steve@altair.xemacs.org>
+
+	* fileio.c (Fsubstitute_in_file_name): Enable double slash notation
+	for cygwin32.
+	From Keisuke Mori <ksk@ntts.com>
+
+1998-06-24  Andy Piper  <andyp@parallax.co.uk>
+
+	* toolbar-msw.c (mswindows_output_toolbar): only enable masked
+	images if we have masks. This handles the xbm case (have masks)
+	and avoids overuse of resources in the xpm case (generally no masks).
+	Don't output small toolbars.
+
+1998-06-29  Kyle Jones  <kyle_jones@wonderworks.com>
+
+	* eval.c (run_hook_with_args_in_buffer): Don't treat
+	  the default value of a buffer local hook as a list of
+	  hooks unless it is both a cons and the car of that cons
+	  is not Qlambda.
+
+1998-06-29  SL Baur  <steve@altair.xemacs.org>
+
+	* extents.c: Email address for Ben Wing is ben@xemacs.org.
+	* process-unix.c: Ditto.
+	* mule-coding.h: Ditto.
+	* mule-coding.c: Ditto.
+	* mule-charset.c: Ditto.
+	* mule-charset.h: Ditto.
+	* file-coding.c: Ditto.
+	* file-coding.h: Ditto.
+
+1998-06-22  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+
+	* event-msw.c: Guard against recursion when freeing
+	  FRAME_MSWINDOWS_TARGET_RECT struture in WM_SIZE processing.
+
+	* frame-msw.c: Don't set WS_VISIBLE attribute on first frame.
+	  Call ShowWindow twice in init_frame_3 to get round runemacs
+	  weirdness.
+
+1998-06-27  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* scrollbar.c (vertical_scrollbar_changed_in_window): Ditto.
+
+	* winslots.h: Rename.
+
+	* window.c (specifier_vars_of_window): Renamed
+	vertical-divider-draggable-p to vertical-divider-always-visible-p,
+	as suggested by Ben Wing.
+	(specifier_vars_of_window): Fix docstrings.
+
+1998-06-22  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
+
+	* unexaix.c: Line number information works correctly again.
+
+1998-06-22  Olivier Galibert  <galibert@pobox.com>
+
+	* emacs.c (__sti__iflPNGFile_c___): Added. See comment. Cry.
+
+1998-06-21  Martin Buchholz  <martin@xemacs.org>
+
+	* editfns.c (get_home_directory): ANSIfy.
+	XEmacs is compilable under C *and* C++.
+	It's XEmacs, not Xemacs!
+
+1998-06-19  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+
+	* console-msw.h: added a list of fonts to device data.
+
+	* device-msw.c: enumerate list of available fonts in
+	  mswindows_init_device. Free list in mswindows_delete_device.
+
+	* objects-msw.c: Added helper function match_font used by
+	  mswindows_initialize_font_instance and mswindows_list_fonts.
+	  Allow a charset to be specified in a font string, even if
+	  previous fields havn't been specified.
+
+1998-06-23  Greg Klanderman  <greg@alphatech.com>
+
+	* indent.c (column_at_point): column cache bugfix.
+	Set last_known_column_point to the buffer position for
+	which the column was requested, not buffer's point.
+
+	* redisplay.c (decode_mode_spec): for current-column, show
+	window's point's column, not buffer's point's column.
+
+1998-06-23  Andy Piper  <andyp@parallax.co.uk>
+
+	* menubar-msw.c (mswindows_handle_wm_command): use
+	enqueue_misc_user event rather than
+	mswindows_enqueue_msic_user_event to fix customize problems. Add some
+	checks that X does.
+
+	* console-msw.h: declare mswindows_enqueue_magic_event.
+
+	* event-msw.c (mswindows_enqueue_magic_event): make global.
+
+1998-06-24  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* line-number.c (LINE_NUMBER_FAR): Reverted to 16384.
+	(buffer_line_number): Use EMACS_INT_MAX instead of random LOTS.
+	(add_position_to_cache): Use EMACS_INT instead of int.
+
+1998-06-21  Olivier Galibert  <galibert@pobox.com>
+
+	* lisp-disunion.h (XMARKBIT): Have XMARKBIT return something
+	suitable for an int used as a boolean (btw, C sucks.).
+
+1998-06-18  Andy Piper  <andyp@parallax.co.uk>
+
+	* object-msw.c: remove warnings.
+
+	* device-msw.c: #define wrongly named cygwin structure elements.
+
+	* s/cygwin32.h: define DEMI_BOLD
+
+1998-06-19  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+
+	* redisplay-msw.c: new function mswindows_apply_face_effects.
+	  This is called by output_string and output_cursor to display
+	  underline and strikeout on faces.
+
+1998-06-19  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+
+	* console-msw.h: added a list of fonts to device data.
+
+	* device-msw.c: enumerate list of available fonts in
+	  mswindows_init_device. Free list in mswindows_delete_device.
+
+	* objects-msw.c: Added helper function match_font used by
+	  mswindows_initialize_font_instance and mswindows_list_fonts.
+	  Allow a charset to be specified in a font string, even if
+	  previous fields havn't been specified.
+
+1998-06-15  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+
+	* objects-msw.c:
+	  Removed compilation warnings from mswindows_string_to_color.
+	  mswindows_list_fonts returns a more general bogus font.
+	  New lisp-visible function mswindows-color-list.
+
+1998-06-19  David Bush <david.bush@adn.alcatel.com>
+
+	* editfns.c (Fuser_login_name): Modify to user new function
+	user_login_name.
+	(user_login_name): C only function to avoid Lisp object overhead
+	Returns "unknown" instead of nil in Cygwin environment
+
+	* fileio.c (Fexpand_file_name): Treat "~" and "~user" as
+	equivalent for current user in Cygwin environment. Use new
+	function user_login_name to get username.
+
+	* lisp.h: Declare user_login_name
+
+1998-06-18  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
+
+	* unexaix.c (make_hdr): Fixed bias computations so debugging info
+	works again.
+	Some other insignificant nitpicks.
+
+1998-06-18  Andy Piper  <andyp@parallax.co.uk>
+
+	* toolbar-msw.c (mswindows_output_toolbar): specify ILC_MASK when
+	creating the image list and make sure he bk color is transparent.
+
+1998-06-18  Jan Vroonhof  <vroonhof@math.ethz.ch>
+
+	* event-Xt.c (emacs_Xt_remove_timeout): Also remove timeout from
+	completed_timeouts. The timer could have expired.
+
+1998-06-17  Andy Piper  <andyp@parallax.co.uk>
+
+	* console-msw.h: move XEMACS_RECT_WH inside frame
+	parameters. define macors to access it.
+
+	* frame-msw.c (mswindows_init_frame_1): use new target_rect
+	parameter to intialise desired sizing. (mswindows_init_frame_2):
+	enable and size the frame to something sensible when we get
+	here. (mswindows_set_frame_properites): use new
+	mswindows_size_frame_internal function and size frame if frame
+	parameters not just if init is finished - WM_SIZE happens too
+	early for some specs. (mswindows_size_frame_internal): new
+	function abstracted from mswindows_set_frame_properties.
+	(Vmswindows_use_system_frame_size_defaults):
+	new variable controls whether to allow the system to pick frame
+	size defaults, defaults to nil.
+
+	* event-msw.c: in WM_SIZE use mswindows_size_frame_internal rather
+	than duplicated code.
+
+1998-06-15  Colin Rafferty <colin@xemacs.org>
+
+	* Makefile.in.in: Made EXTW_LINK expand properly.
+
+1998-06-12  Martin Buchholz  <martin@xemacs.org>
+
+	* redisplay.c (vars_of_redisplay): default value of
+	column-number-start-at-one should be NIL!
+
+1998-06-11  Martin Buchholz  <martin@xemacs.org>
+
+	* casefiddle.c:
+	(upcase-initials "fooBar") ==> "FooBar" instead of "Foobar"
+
+1998-06-05  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* eldap.c (Fldap_search_internal): Use build_ext_string instead of
+	build_string to avoid crashes under Mule.
+
+1998-06-13  Andy Piper  <andyp@parallax.co.uk>
+
+	* ntplay.c (play_sound_data_1): don't delete the sound data until
+	the next sound is played and the previous one finished.
+
+1998-06-10  Samuel Mikes  <smikes@alumni.hmc.edu>
+
+	* fileio.c (directory-sep-char): Escape backslashes.
+
+1998-06-10  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* event-stream.c: Fix docstring reference.
+
+1998-06-12  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* alloc.c (make_float): Remove useless initialization of `next'
+ 	field.
+	(make_pure_float): Ditto.
+
+	* lisp.h (struct Lisp_Float): Rename `next' to `__unused__next'.
+
+1998-06-08  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* fileio.c (Fmake_directory_internal): Remove conditionals
+	on WINDOWSNT when calling mkdir.
+
+	* ntproc.c: Deleted the following unused functions:
+	register_child, reap_subprocess, sys_wait.
+
+	* nt.c (sys_rename): Ifzeroed this implementation.
+	Deleted the following unused functions:
+	sys_access, sys_chdir, sys_chmod, sys_creat, sys_link, sys_mkdir,
+	sys_mktemp, sys_rmdir, sys_unlink, sys_close, sys_dup, sys_dup2,
+	sys_read, sys_write.
+	Merger sys_fopen and sys_open with sysdep.c implementation.
+
+	* sysdep.c: Removed MS-DOS code.
+	(sys_rename): Deal with Microsoft rename weirdness.
+	(sys_open): Implemented for Windows.
+	(sys_fopen): Ditto.
+	(sys_mkdir): Ditto.
+
+1998-06-08  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* buffer.c (complex_vars_of_buffer): Removed %t description from
+	the docstring.
+
+1998-06-04  Rick Rankin  <Rick_Rankin-P15254@email.mot.com>
+
+	* scrollbar-msw.c: initialize the cbSize element of the
+	SCROLLINFO struct before calling SetScrollInfo. WinNT seems
+	to ignore the value of cbSize, but Win95 (and I presume Win98)
+	appear to want it set to sizeof(SCROLLINFO).
+
+1998-06-04  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* event-stream.c: Defined Qcancel_mode_internal.
+	(syms_of_event_stream): defsymbol'ed it.
+
+	* events.h: Externed it.
+
+	* event-msw.c (mswindows_wnd_proc, WM_CANCELMODE): Added this handler.
+
+1998-06-04  Oliver Graf <ograf@fga.de>
+
+	* frame-x.c (x_cde_destroy_callback): free the data
+	(cde-start-drag-internal) corrected root position, 21.1 needs this
+	hardcoded in Button events
+	(offix-start-drag-internal) corrected root position
+
+1998-06-03  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* process-nt.c (signal_cannot_launch): Use signal_simple_error()
+	instead of error().
+
+1998-06-03  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* dialog-msw.c (button_width): Removed `inline' from the function
+	declaration.
+
+1998-06-03  Rick Rankin  <Rick_Rankin-P15254@email.mot.com>
+
+	* frame-msw.c: add WS_VISIBLE flag to the first frame created.
+	Note that adding this flag to subsequent frames causes problems.
+
+1998-06-03  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
+
+	* glyphs-eimage.c (png_instantiate) move 'struct
+	png_memory_storage tbr' out of nested block to avoid dangling
+	reference
+
+1998-06-02  Andy Piper  <andyp@parallax.co.uk>
+
+	* faces.h:
+	* faces.c: rename 3d-object -> gui-element. add toolbar face which
+	inherits from gui-element.
+
+	* glyphs-msw.c: use DIBitmaps for xbm bitmaps to be consistent
+	with existing code, generate masks correctly.
+
+1998-06-03  P. E. Jareth Hein  <jareth@camelot-soft.com>
+
+	* glyphs-eimage.c: Changed included header for gifs to use
+	Gifreader instead of giflib.
+
+	* glyphs-x.c: removed the image-related functions that were
+	moved into glyphs-eimage.
+
+1998-06-02  David Bush  <david.bush@adnb.alcatel.com>
+
+	* glyphs.c (bitmap_to_lisp_data) Define XFree to be free
+	if built without X Windows support.
+
+1998-06-02  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* fns.c (Fconcat): Synch docstring with new reality.
+
+1998-06-03  SL Baur  <steve@altair.xemacs.org>
+
+	* frame.c: Remove reference to msdos.h (which is going away).
+	Suggested by Hrvoje Niksic and Kirill Katsnelson.
+
+1998-06-02  P. E. Jareth Hein  <jareth@camelot-soft.com>
+
+	* glyphs-eimage.c (jpeg_instantiate): Fix handling of
+	grayscale images/
+
+
+1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* events.h: Fixed commentary about misc-user scrollbar events.
+
+	* scrollbar-x.c (x_update_vertical_scrollbar_callback): Use frame
+	object as an event channel, instead of window object.
+	(x_update_horizontal_scrollbar_callback): Ditto.
+
+1998-05-29  Andy Piper  <andyp@parallax.co.uk>
+
+	* ntplay.c (play_sound_data_1) new function. convert alloca data
+	to malloc if necessary.
+	(play_sound_file): if the file is not in our path then convert to
+	data and play.
+
+1998-06-01  SL Baur  <steve@altair.xemacs.org>
+
+	* mule-mcpath.c (mc_chdir): Reverse parameters in call to memcpy.
+	* msdos.c (Frecent_doskeys): Ditto.
+
+	* unexalpha.c (unexec): Reverse parameters in call to memcpy.
+	Suggested by Reggie Perry <perry@zso.dec.com>
+
+	* buffer.h: Eliminate size in declaration.
+
+1998-06-01  Olivier Galibert  <galibert@pobox.com>
+
+	* unexelfsgi.c (unexec): Cleanup n/nn and remove useless kludge.
+
+1998-06-01  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* gui.c (gui_item_init): Changed the default value for config member
+	from Qunbound to Qnil.
+
+1998-06-01  Greg Klanderman  <greg@alphatech.com>
+
+	* indent.c (vmotion_pixels): Don't #define abs().
+
+1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* s/windowsnt.h: Defined popen and pclose to be _popen and _pclose
+	respectively.
+
+1998-05-30  Andy Piper  <andyp@parallax.co.uk>
+
+	* glyphs.h: add xbm declarations.
+
+	* console.h: add xbm_instantiate_method device method.
+
+	* glyphs.c (check_valid_xbm_inline) (xbm_validate)
+	(bitmap_to_lisp_data) (xbm_mask_file_munging) (xbm_normalize)
+	(xbm_possible_dest_types): moved here from glyphs-x.c. use
+	locate_pixmap_file device method and read_bitmap_data_from_file
+	instead of XmuReadBitmapDataFromFile.
+	(xbm_instatntiate): make a device method.
+
+	* glyphs-x.c: see glyphs.c changes. (read_bitmap_data_from_file)
+	new function that just calls XmuReadBitmapDataFromFile.
+	(x_xbm_instatntiate): device method from xbm_instantiate.
+
+	* glyphs-msw.c (read_bitmap_data) (NextInt)
+	(read_bitmap_data_from_file): new functions copied from Xmu
+	sources.
+	(xbm_create_bitmap_from_data) from Ben <ben@666.com> convert
+	inline data to an mswindows bitmap.
+	(init_image_instance_from_xbm_inline) (xbm_instantiate_1)
+	(mswindows_xbm_instantiate): mswindows-ized versions of the X
+	functions.
+
+1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* window.c (specifier_vars_of_window): Renamed `has_modeline-p' to
+	`modeline-visible-p'.
+	Declared specifier lisp variables at the beginning oh the file
+	as static.
+
+	* procimpl.h (struct process_methods): Changed semantics of
+	create_process method so it accepts lisp strings instead of
+	char pointers.
+
+	* process.c (Fstart_process_internal): Moved building of
+	unix style argv from here to process-unix.c, ...
+
+	* process-unix.c (unix_create_process): ... right here.
+
+	* process-nt.c (nt_create_process): Changed this function to
+	support new semantics, so avoided a GC problem.
+
+	* events.c (Fmake_event): Document misc-user events properties.
+	(Fmake_event): Do not allow arbitrary objects for channel property
+	of misc-user events.
+	(Fmake_event): Change misc-user event validation: it is function
+	which is required, not button.
+
+	* event-msw.c (mswindows_user_event_p): Recognize misc user events as
+	user events.
+	(mswindows_enqueue_misc_user_event): Added function.
+	(mswindows_bump_queue): Removed function.
+	(mswindows_enqueue_magic_event): Support NULL HWND parameter.
+	(mswindows_wnd_proc, WM_CLOSE): Use mswindows_enqueue_misc_user_event().
+	(mswindows_wnd_proc, WM_EXITSIZEMOVE): Ditto.
+	(emacs_mswindows_handle_magic_event): Handle XM_BUMPQUEUE, by doing
+	really nothing, which is my personal favorite thing.
+
+	* console-msw.h: Removed prototype for mswindows_bump_queue().
+	Added prototype for mswindows_enqueue_misc_user_event().
+
+	* menubar-msw.c (mswindows_handle_wm_command): Use
+	mswindows_enqueue_misc_user_event().
+
+	* toolbar-msw.c (mswindows_handle_toolbar_wm_command): Ditto.
+
+	* dialog-msw.c (dialog_proc): Ditto.
+
+	* scrollbar-msw.c (mswindows_handle_scrollbar_event): Ditto.
+	 (mswindows_handle_scrollbar_event): Use frame, not window, for misc
+	user events channel.
+
+1998-05-29  Greg Klanderman  <greg@alphatech.com>
+
+	* window.c (Fwindow_displayed_text_pixel_height): was relying on
+	incorrect semantics of vmotion_pixels which has been fixed.  don't
+	use it anymore as it can't easily be used.
+
+	* indent.c (vmotion_pixels): fix off by one bug moving up.  also
+	the motion was reported incorrectly if you tried to go past end of
+	buffer.
+
+1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* toolbar.h: Removed misleading commentary, as Martin suggested.
+
+1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* lisp.h: Extern Qactivate_menubar_hook.
+
+	* menubar-msw.c (unsafe_handle_wm_initmenu_1): Pass correct value to
+	run_hook ().
+
+1998-05-29  Andy Piper  <andyp@parallax.co.uk>
+
+	* glyphs-msw.c: use BPLINE macro.
+
+	* select-msw.c (mswindows-selection-exists-p)
+	(mswindows-delete-selection): doc string fixes.
+
+	* toolbar-msw.c (mswindows_output_toolbar): make disabled buttons
+	unpressable. warning elimination.
+
+1998-05-28  Martin Buchholz  <martin@xemacs.org>
+
+	* alloc.c (dbg_constants):
+	* dbxrc:
+	* gdbinit:
+	Remove toolbar_data debugging code, since that lrecord has
+	also been removed.
+
+Wed May 27, 1998  Darryl Okahata  <darrylo@sr.hp.com>
+
+	* alloc.c: zap cached value of (user-home-directory), so that
+	  it's not undumped.
+
+	* buffer.c: From init_buffer(), separated out code that
+	  determined the initial directory for the *scratch* buffer, and
+	  put them into a function called "init_initial_directory()".
+	  The initial directory is now available as a global "char *"
+	  called initial_directory.
+
+	* buffer.h: Added extern entries for initial_directory[] and
+	  init_initial_directory().
+
+	* editfns.c: added new elisp function "user-home-directory",
+	which basically returns getenv("HOME"), but attempts to use
+	other values if $HOME isn't set.This may have to be tweaked in
+	the future as, under Unix, "/" is used if $HOME isn't set (this
+	probably should be set to the current directory).  To support
+	this, a new C function, "get_home_directory()", now exists,
+	which returns the "home directory", as a "char *" string.
+
+	* emacs.c: Rearrange NT initialization order so that
+	environment/registry variables will be properly entered into
+	Vprocess_environment.
+
+	* fileio.c: replaced egetenv("HOME") with calls to the new
+	  get_home_directory().
+
+	* lisp.h: Added function prototypes for uncache_home_directory()
+	  and get_home_directory(), along with lisp prototypes for
+	  Fuser_home_directory() and friends.
+
+	* nt.c: replaced getenv("HOME") with calls to the new
+	  get_home_directory().
+
+	* sysfile.h: for WINDOWSNT, #include <direct.h>, to suppress
+	  warnings about getcwd(), etc. not having prototypes.
+
+1998-05-28  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* process-nt.c (send_signal): Emulate SIGHUP.
+	(validate_signal_number): Ditto.
+
+	* event-msw.c (mswindows_wnd_proc, WM_KEYDOWN): Unconditionally
+	remove MOD_SHIFT from ASCII characters.
+	(mswindows_wnd_proc, WM_KEYDOWN): Do not activate the menubar when
+	F10 is pressed.
+
+1998-05-24  Oliver Graf <ograf@fga.de>
+
+	* frame-x.c (cde-start-drag-internal): added filename and multi-
+	data transfers
+	(x_cde_convert_callback) dito
+
+1998-05-26  Oliver Graf <ograf@fga.de>
+
+	* frame-x.c: include event-mod.h also with CDE
+	(x_cde_convert_callback) made the thing working
+	(cde-start-drag-internal) also debugging
+
+1998-05-25  Hans Guenter Weigand  <hgweigand@wiesbaden.netsurf.de>
+
+	* m/sparc.h:
+	* getloadavg.c:
+	* malloc.c:
+	* unexec.c:
+	* mem-limits.h:
+	  - add __OpenBSD__ where __NetBSD__ was found.
+	  - TODO: replace platform-specific conditional compilation by
+	    feature tests in configure.in.
+
+1998-05-15  Greg Klanderman  <greg@alphatech.com>
+
+	* window.c (Fwindow_displayed_text_pixel_height): New function.
+	(syms_of_window): DEFSUBR it.
+
+	* indent.c (Fvertical_motion_pixels): New function - request
+	movement in pixels.
+	(vmotion_pixels): helper.
+	(syms_of_indent): DEFSUBR.
+	* lisp.h: declaration for vmotion_pixels().
+
+	* indent.c (Fvertical_motion): Add optional third argument PIXELS,
+	to request returning motion in pixels.
+	(Fvertical_motion_pixels): Remove, functionality merged into
+	Fvertical_motion.
+ 	* window.c (window_scroll): call Fvertical_motion with 3 arguments.
+	(Fmove_to_window_line): ditto.
+	* lisp.h: Change declaration for Fvertical_motion.
+
+	* window.c: rename window-text-pixel-{height,width,edges} to
+	window-text-area-pixel-*.
+
+1998-05-26  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
+
+	* tooltalk.c (vars_of_tooltalk) added staticpro for
+	Tooltalk_Message_plist_str and Tooltalk_Pattern_plist_str
+
+1998-05-27  Andy Piper  <andyp@parallax.co.uk>
+
+	* faces.c: create a new 3d_object_face, make modeline and
+	vertical_divider faces fallback to this rather than the default.
+
+1998-05-21  Andy Piper  <andyp@parallax.co.uk>
+
+	* s/cygwin32.h: define charsets for cygwin.
+
+1998-05-25  Andy Piper  <andyp@parallax.co.uk>
+
+	* toolbar-msw.c (mswindows_output_toolbar): fix up button sizes
+	and coordinates. resize bitmaps if we have already settled on a
+	different size.
+
+	* glyphs-msw.c (xpm_to_eimage): add ';' for mswindows compiler.
+
+1998-05-25  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* toolbar-msw.c (mswindows_handle_toolbar_wm_command): Ditto.
+
+	* menubar-msw.c (mswindows_handle_wm_command): Ditto.
+
+	* gui.h: Ditto.
+
+	* gui-x.c (popup_selection_callback): Ditto.
+
+	* dialog-msw.c (dialog_proc): get_callback -> get_gui_callback.
+
+	* gui.c (get_callback): Renamed to get_gui_callback.
+
+1998-05-17  Martin Buchholz  <martin@xemacs.org>
+
+	* glyphs.h: order rearrangement.
+
+	* device-tty.c (tty_asynch_device_change): Warning suppression.
+	* device-x.c (x_device_system_metrics): Warning suppression.
+	Make Doc strings consistent with coding standards.
+
+1998-05-24  Martin Buchholz  <martin@xemacs.org>
+
+	* general.c: multiple definition of `Qicon'.  general.c seems
+	  like a good home for Qicon.
+
+1998-05-20  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* This patch is to fix compilation warnings under Windows.
+
+	* s/windowsnt.h: Encapsulate getpid with sys_getpid.
+	Added prototypes for FSF inherited functions, with which XEmacs is
+	sprinkled thoroughly.
+	Removed some #if 0 code. Bracketed some more definitions, probably
+	related to Visual C versions prior to 4 (we do not support them).
+
+	* sysfloat.h (logb): Finally, get logb() prototyped.
+
+	* sysfile.h: Added Windows specific includes.
+	Removed old Windows specific code bracketed with #if 0.
+
+	* sysdep.h: Added prototype for xrealpath().
+
+	* sysdep.c (sys_getpid): Added function, to support '95 negative pids.
+
+	* symsinit.h: Added prototypes for syms_of_dired_mswindows,
+	vars_of_dired_mswindows and init_ntproc (Grrr).
+
+	* realpath.c: Added Windows specific include files.
+	(xrealpath): Conditionalized declaration of some auto variables on
+	S_IFLNK, to avoid warnings.
+
+	* ntproc.c: Disabled some compiler warnings. This file is going to
+	die, so I have not cleaned it up much.
+	(set_process_dir): Const parameter.
+	(Fwin32_short_file_name): Down CHECK_* macros to one argument.
+	(Fwin32_long_file_name): Ditto.
+	(Fwin32_set_process_priority): Ditto. Why didn't I remove these
+	three functions?
+
+	* nt.h: Added prototypes for set_process_dir and convert_time.
+
+	* nt.c: More include files.
+	(getpwnam): Consted char* argument.
+	(get_emacs_configuration): Const return value.
+	(opendir): Const argument.
+	(stat): Casted converstion long->short.
+	(stat): Removed ad hoc and questionable support for non-MSC compile.
+	(sys_pipe): Removed unused auto variable.
+	(_sys_read_ahead): Removed calls to DebPrint.
+	(sys_read): Ditto, in 2 places.
+	(term_ntproc): Added unused int parameter to signal handler, to
+	avoid a warning when compiling a call to signal().
+	(msw_sigset): Properly return old signandler or NULL instead of void.
+
+	* floatfns.c (Flogb): Casted arguments to unary minus to signed.
+
+	* gmalloc.c (morecore): Ditto.
+	(_free_internal): Ditto.
+
+	* lread.c (parse_integer): Ditto.
+
+	* dired-msw.c: Added several include files.
+
+	* cmdloop.c (Fcommand_loop_1): Added Microsoft C to the Big List
+	of Compilers to Shut Up.
+
+	* callproc.c: Added #includes to suppress warnings under Windows.
+	(init_callproc): Removed #if0'ed code and unused variables.
+
+1998-05-25  Andy Piper  <andyp@parallax.co.uk>
+
+	* device-msw.c (mswindows_device_system_metrics): do planes in a
+	way consistent with X.
+
+	* glyphs-msw.c (mswindows_initialize_image_instance_mask): don't
+	use SetPixel, use DIBits functions.
+	(xpm_to_eimage): frob colors more closely like xpm deos.
+
+	* toolbar-msw.c: only resize bitmaps when shrinking. Adjust look
+	to be closer to X version.
+
+	* event-msw.c: use tooltip string directly.
+
+	* redisplay-msw.c: reinstate Kirill's bg pixmap change.
+
+	* objects-msw.c: frob rgb colors that only Kyle uses.
+
+	* dialog-msw.c (button_width): INLINE -> inline.
+
+1998-05-23  SL Baur  <steve@altair.xemacs.org>
+
+	* getloadavg.c (getloadavg): Fix typo.
+
+1998-05-23  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* objects-msw.c (mswindows_initialize_font_instance): Added support
+	for font character sets.
+	Replaced 'XXX' with '####' in comments throughout the file.
+
+1998-05-23  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* emacs.c (main_1): Added calls to vars_of_dialog_mswindows() and
+	console_type_create_dialog_mswindows(), to initialize Windows dialog
+	support.
+
+	* symsinit.h: Prototyped the above functions.
+
+	* dialog-x.c (x_popup_dialog_box): Moved dialog descriptor consistency
+	checks to dialog.c...
+
+	* dialog.c (Fpopup_dialog_box): ...right here. Added more checks: a
+	device must support dialog boxes, and the descriptor must supply at
+	least one button.
+
+	* dialog-msw.c: New file, dialogs for Windows.
+
+1998-05-21  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
+
+	* eldap.c (ldap_search_unwind): Return Qnil instead of nothing
+	(Fldap_search_internal): Removed unused variable `err'
+
+	* eldap.h: Moved Lisp_LDAP declaration here instead of using a
+	forward declaration
+
+1998-05-17  Martin Buchholz  <martin@xemacs.org>
+
+	* eldap.h: eldap.[ch] should never be used unless HAVE_LDAP is
+	defined.  Therefore there is no need to handle the case when
+	HAVE_LDAP is undefined.  Similarily, there is no reason to have
+	any code wrapped within `#ifdef emacs', since this code is only
+	useful within an emacs.  This simplifies the code significantly.
+
+	* inline.c: Include eldap.h only if HAVE_LDAP.
+	* inline.c: Don't bother including TT_C_H_PATH, since tooltalk.h
+	already does that.
+
+1998-05-21  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* unexnt.c (copy_executable_and_dump_data_section): Suppress
+	printing dump stats when building without DEBUG_XEMACS.
+	(dump_bss_and_heap): Ditto.
+
+1998-05-21  Andy Piper  <andyp@parallax.co.uk>
+
+	* gnuclient.c: don't suppress window system if there is no display
+	and we are running under mswindows. send 'mswindows device type if
+	we are in this situation.
+
+1998-05-20  Andy Piper  <andyp@parallax.co.uk>
+
+	* general.c:
+	* lisp.h: Qbitmap, Qcursor, Qicon moved here from glyphs-msw.c.
+
+	* glyphs-msw.c: change cursor imgae type name to resource. Fix
+	some nits.
+
+1998-05-20  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* EmacsFrame.c (Xt_StringToScrollBarPlacement):  Added support for
+	{top,bottom}-{left,right} values in addition to
+	{top,bottom}_{left,right}.
+
+1998-05-18  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* fileio.c (Fmake_temp_name): Remove unreached code.
+
+	* process-nt.c (validate_signal_number): Use
+	signal_simple_error().
+
+1998-05-19  Martin Buchholz  <martin@xemacs.org>
+
+	* unexhp9k800.c:
+	* sound.c (vars_of_sound):
+	* sysdep.c (reset_sigio_on_device):
+	* window.c (window_bottom_gutter_height):
+	unexhp9k800.c:258: warning: implicit declaration of function
+	`calculate_checksum'
+	sound.c:604: warning: implicit declaration of function `vars_of_hpplay'
+	sysdep.c:1012: warning: unused variable `owner'
+	window.c:993: warning: `window_right_toolbar_width' defined but not used
+
+1998-05-19  Andy Piper  <andyp@parallax.co.uk>
+
+	* glyphs-msw.c (mswindows_create_resized_mask)
+	(mswindows_create_resized_bitmap): new funnctions split out from
+	mswindows_resize_dibitmap_instance.
+
+	* glyphs-msw.h: declare new resize functions.
+
+	* toolbar-msw.c (mswindows_output_toolbar): use new bitmap resize
+	functions so that the original bitmaps are preserved.
+
+	* sheap.c: fixup static heap exhausted error to avoid FAQs.
+
+	* redisplay-msw.c (mswindows_output_blank): fixup brush from bg
+	color if we are trying to output 0 depth bg pixmap.
+
+	* scrollbar-msw.c: warning elimination.
+
+1998-05-18  Martin Buchholz  <martin@xemacs.org>
+
+	* frame-x.c (x_update_frame_external_traits): Start preprocessor
+	directives in column 1.
+
+	* search.c (skip_chars): Avoid using xzero with arrays, since some
+	compilers get confused by the construct &array.
+
+1998-05-18  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* objects-msw.h:
+	* objects-msw.c: Changed the charset value for a new font from
+	"don't care" to "ansi".
+
+	* glyphs-msw.c (convert_EImage_to_DIBitmap): Warnings fix.
+
+1998-05-18  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* event-msw.c (mswindows_wnd_proc, WM_KEYDOWN): Do not clear shift
+	modifier on control chars.
+	Use IsCharAlpha() instead of isaplha().
+
+1998-05-19  Kazuyuki IENAGA <ienaga@jsys.co.jp>
+
+	* s/freebsd.h: FreeBSD 2.2.6 now supports setlocale(LC_ALL, "").
+
+1998-05-18  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* objects-msw.c (mswindows_initialize_font_instance): Use ANSI
+	charset when creating font.
+	(mswindows_initialize_color_instance): Do not create brush along
+	with a color.
+	(mswindows_finalize_color_instance): Do not delete it then.
+
+	* objects-msw.h (struct mswindows_color_instance_data): Removed
+	brush slot, and corresponding accessor macro.
+
+1998-05-18  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* toolbar.c: Removed toolbar_data lrecord implementation.
+	(mark_frame_toolbar_buttons_dirty): Replase usage of toolbar_data
+	with toolbar_buttons (via FRAME_TOOLBAR_BUTTONS).
+	(compute_frame_toolbar_buttons): Ditto.
+	(CHECK_TOOLBAR): Ditto.
+	(set_frame_toolbar): Removed allocation of toolbar_data lrecord.
+	(update_frame_toolbars): Do not check for changed buffer
+	here. Toolbar information is provided by cached specs in
+	windows. The check for buffer is eliminated becuase toolbars are
+	marked changed in set_frame_selected_window() in frame.c
+	Added check for changed toolbars geometry.
+	(compute_frame_toolbars_data): Removed unused second parameter;
+	Adjusted callers of this static function throughout the file.
+	(init_frame_toolbars): Initialize current_toolbar_size.
+	(update_frame_toolbars): Use DEVICE_SUPPORTS_TOOLBARS_P instead of
+	what is its current expansion, for clarity.
+	(init_frame_toolbars): Ditto.
+	(init_device_toolbars): Ditto.
+	(init_global_toolbars): Ditto.
+
+	* toolbar.h: Removed definition of toolbar_data lrecord.
+	Added accessor macros FRAME_TOOLBAR_BUTTONS and
+	FRAME_CURRENT_TOOLBAR_SIZE.
+	Added macro DEVICE_SUPPORTS_TOOLBARS_P.
+
+	* toolbar-x.c (x_output_toolbar): The same change as in
+	toolbar-msw.c
+	(x_output_toolbar): Ditto.
+	(x_redraw_exposed_toolbar): Ditto.
+
+	* toolbar-msw.c (mswindows_output_toolbar): Retrieve current
+	buttons from toolbar_buttons using FRAME_TOOLBAR_BUTTONS macro.
+	(mswindows_output_toolbar): Ditto.
+	(mswindows_output_toolbar): Ditto.
+
+	* frame.c (mark_frame): Removed marking of arrays, according to
+	frameslots.h change.
+	(nuke_all_frame_slots): Ditto.
+	(set_frame_selected_window): Mark toolbars changed when
+	last_nonminibuf_window changes.
+
+	* frame.h (struct frame): Moved some slots to frameslots.h.
+	Added current_toolbar_size array.
+	Changed references from toolbar_data to toolbar_buttons in macros
+	FRAME_RAW_THEORETICAL_TOOLBAR_VISIBLE,
+	FRAME_RAW_THEORETICAL_TOOLBAR_SIZE and
+	FRAME_RAW_THEORETICAL_TOOLBAR_BORDER_WIDTH.
+
+	* frameslots.h: Added macro MARKED_SLOT_ARRAY a la winslots.h
+	Moved arrays of lisp objects here from frame.h: toolbar_size,
+	toolbar_visible_p, toolbar_border_width.
+	Removed toolbar_data slot and added toolbar_buttons.
+
+1998-05-17  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* symsinit.h: Externed syms_of_process_nt()
+
+	* emacs.c (main_1): Call syms_of_process_nt()
+
+	* process-nt.c: Quote process arguments by a call to Lisp function
+	`nt-quote-process-args'.
+	(syms_of_process_nt): New function.
+	(nt_send_process): Flush data stream after each write, to avoid
+	leaving buffered data.
+	(nt_send_process): When blocked on process output, wait for
+	process to slurp more for progressively increasing time intervals.
+
+1998-05-17  Martin Buchholz  <martin@xemacs.org>
+
+	* window.c (have_undivided_common_edge): Make file-local function
+	static.
+	(map_windows): Return 0 if all map functions successful.
+	Fix typos.
+
+	* winslots.h: Use unlikely names for local variables in macros to
+	avoid shadowing warnings.
+
+1998-05-17  Andy Piper  <andyp@parallax.co.uk>
+
+	* toolbar-msw.c (mswindows_output_toolbar): hash on toolbar width
+	so that we re-output if the toolbar size has changed.
+
+1998-05-17  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
+
+	* s/aix4-2.h (ALIGN_DATA_RELOC): Undefined to support new unexaix.c.
+
+	* s/aix3-1.h (ALIGN_DATA_RELOC): Defined to support new unexaix.c.
+
+	* unexaix.c: Massive cleanup and support of AIX 4.2 (and hopefully
+	greater).
+
+1998-05-16  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* glyphs-msw.c: Defined OEMRESOURCE before including windows.h to
+	get bitmap manifest constants defined.
+
+	* console-msw.h: Include system files in angle brackets, not in
+	quotes.
+
+	* window.c (specifier_vars_of_window): Fixed a typo in
+	`vertical-divider-line-width' docstirng.
+
+1998-05-16  Olivier Galibert  <galibert@pobox.com>
+
+	* line-number.c (delete_invalidate_line_number_cache): Use an
+	EMACS_INT.
+	(buffer_line_number): Remove dangerous, plain wrong when using
+	64bits emacs ints, cast.
+
+	* insdel.c (buffer_delete_range): Use an EMACS_INT.
+
+	* cmds.c (Fforward_line): Use EMACS_INTs.
+
+	* search.c (bi_scan_buffer): Change to use EMACS_INTs.
+	(scan_buffer): Ditto.
+	(bi_find_next_newline_no_quit): Remove useless cast.
+	(find_next_newline_no_quit): Ditto.
+	(find_next_newline): Ditto.
+	(find_before_next_newline): Use an EMACS_INT.
+
+	* lisp.h: Change scan_buffer to pass EMACS_INTs.
+
+1998-05-16  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* menubar-msw.c (mswindows_handle_wm_command): Ditto.
+
+	* toolbar-msw.c (mswindows_handle_toolbar_wm_command): Ditto.
+
+	* gui-x.c (popup_selection_callback): Use it.
+
+	* gui.h (get_callback): Declare it.
+
+	* gui.c (get_callback): New function.
+
+1998-05-15  SL Baur  <steve@altair.xemacs.org>
+
+	* window.c (have_undivided_common_edge): Guard scrollbar specific
+	stuff.
+	(window_needs_vertical_divider_1): Ditto.
+
+1998-05-16  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* emacs.c (decode_path): Eliminate compiler warning.
+	(Fdecode_path): Renamed to Fsplit_path.
+	(Fsplit_string_by_char): New function.
+
+1998-05-14  Damon Lipparelli  <lipp@primus.com>
+
+	* winslots.h: close comment
+
+1998-05-16  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* callproc.c: Removed declared and unused variable Qbuffer_file_type.
+
+	* bufslots.h: Removed buffer_file_type slot.
+
+	* buffer.c (complex_vars_of_buffer): Removed buffer_file_type from
+	buffer local flags.
+	(complex_vars_of_buffer): Removed buffer-file-type variable and
+	its default reference.
+
+1998-05-15  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* faces.c (complex_vars_of_faces): Defined
+	Vvertical_divider_face.
+	(vars_of_faces): Staticpro it.
+
+	* faces.h: Externed Vvertical_divider_face.
+
+	* redisplay-x.c (x_output_vertical_divider): Use
+	Vvertical_divider_face to draw the divider instead of modeline
+	face.
+
+	* redisplay-msw.c (mswindows_output_vertical_divider): Draw
+	divider face using Vvertical_divider_face background.
+	Fix drawing spacing gaps around the divider.
+
+1998-05-14  Didier Verna  <verna@inf.enst.fr>
+
+	* redisplay-x.c (x_output_vertical_divider): removed hard-wired
+	values for the vertical divider line width and spacing. Use the
+	cached values from the window structure instead.
+	(x_divider_width): ditto.
+
+	* window.c (specifier_vars_of_window): new specifiers:
+	vertical-divier -line-width and -spacing.
+	(vertical_divider_global_width_changed): formerly known as
+	vertical_divider_shadow_thickness_changed.
+
+	* winslots.h: new slots: vertical_specifier _line_width and
+	_spacing. Plus corrected a comment typo.
+
+1998-05-15  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* window.h: Declared window_divider_width().
+
+	* console-stream.c (stream_divider_width): Removed method.
+	(console_type_create_stream): And declaration for it.
+
+	* redisplay.c (pixel_to_glyph_translation): Use
+	window_divider_width() instead of divider_width redisplay method.
+	(pixel_to_glyph_translation): Fix top divider edge calculation
+	when scrollbar is on top.
+
+	* window.c (window_divider_width): New function, an outphaser for
+	divider_width redisplay method.
+	(window_right_gutter_width): Use it.
+	(specifier_vars_of_window): For	vertical-divider-{spacing,line-width}
+	specifiers, set fallback values differently on TTYs, and document
+	the behavior of these on TTYs in the docstrings.
+
+	* scrollbar.c (update_scrollbar_instance): Use
+	window_divider_width() instead of divider_width redisplay method.
+
+	* console.h (struct console_methods): Removed divider_width_method.
+
+	* redisplay-tty.c (tty_divider_width): Removed device method.
+	(console_type_create_redisplay_tty): Removed definition for it.
+	(tty_output_vertical_divider): Respect the value returned by
+	window_divider_width thus divider line width specification.
+
+	* redisplay-msw.c (mswindows_divider_width): Removed device method.
+	(console_type_create_redisplay_mswindows): Removed definition for it.
+	(mswinodws_output_vertical_divider): Respect the value returned by
+	window_divider_width thus divider line width specification.
+
+1998-05-15  Andy Piper  <andyp@parallax.co.uk>
+
+	* toolbar-msw.c: guess toolbar frame size a bit more accurately.
+
+1998-05-15  Andy Piper  <andyp@parallax.co.uk>
+
+	* glyphs-msw.c: resource loading implementation.
+	(cursor_normalize): new function.
+	(cursor_validate): ditto.
+	(cursor_instantiate): ditto.
+	(cursor_name_to_resource): ditto.
+	(cursor_possible_dest_types): ditto.
+	(check_valid_symbol): ditto.
+	(check_valid_string_or_int): ditto.
+
+1998-05-14  Martin Buchholz  <martin@xemacs.org>
+
+	* sysdep.c (tty_init_sys_modes_on_device): Treat VSUSP just like
+	VINTR and VQUIT.
+
+	* process-unix.c (process_signal_char): Use VSUSP instead of
+	non-standard VSWTCH.  Always prefer VSUSP to VSWTCH.
+
+1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* specifier.c (specifier_instance): Change locale precedence of
+	instantiation so window locale has higher priority than buffer
+	locale.
+	(Fspecifier_instance): Reflect this in docstring.
+	(Fadd_spec_list_to_specifier): Ditto.
+	(Fadd_spec_to_specifier): Ditto.
+	(Fremove_specifier): Ditto.
+
+1998-05-15  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	** Dialog separation into a device method from Andy Piper
+
+	* emacs.c (main_1): Call console_type_create_dialog_x().
+
+	* dialog-x.c (x_popup_dialog_box): Old Fpopup_dialog_box converted
+	into this device method.
+	(console_type_create_dialog_x): New function.
+
+	* dialog.c (Fpopup_dialog_box): New function.
+	(syms_of_dialog): Defsubr it.
+
+	* console.h (struct console_methods): Declared
+	popup_dialog_box_method().
+
+	* symsinit.h: Defined console_type_create_dialog_{x,mswindows}
+
+1998-05-14  Oliver Graf <ograf@fga.de>
+
+	* dragdrop.c (vars_of_dragdrop): dragdrop-protocols created
+	* frame-x.c (x_cde_transfer_callback): checked for merge errors
+
+1998-05-13  Oliver Graf <ograf@fga.de>
+
+	* dragdrop.c (vars_of_dragdrop): provide dragdrop-api
+
+1998-05-15  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* console.h (device_metrics): Removed dbcs, input-method-editor
+	and right-to-left metrics.
+
+	* device.c (Fdevice_system_metric): Ditto.
+	(Fdevice_system_metrics): Ditto.
+	(syms_of_device): Ditto.
+	(Fdevice_system_metric): Swapped DEVICE and METRIC parameters back
+	again.
+
+1998-05-14  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* line-number.h (mark_line_number_cache): Remove unused
+	declaration.
+
+	* line-number.c (LINE_NUMBER_FAR): Increase to 32768.
+	(get_nearest_line_number): Simplify.
+	(add_position_to_cache): Make the old marker point nowhere.
+
+1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	** Renamed window-divider-map => vertical-divider-map
+	and event-over-divider-p => event-over-vertical-divider-p,
+	in the following files/functions:
+	* events.h:
+	* events.c (Fevent_over_divider_p):
+	* keymap.c (get_relevant_keymaps):
+	(vars_of_keymap):
+
+	* redisplay.h (OVER_V_DIVIDER): Renamed so from OVER_DIVIDER.
+
+	* redisplay.c (pixel_to_glyph_translation): Use OVER_V_DIVIDER.
+
+1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* window.c (vertical_divider_changed_in_window): Renamed so.
+	(specifier_vars_of_window): Defined Vvertical_divider_draggable_p.
+	(window_needs_vertical_divider_1): Decide whether we need it based
+	on the value of the above specifier. If separators are unwanted,
+	put them only if there's no scrollbar between this window and its
+	right neighbor.
+	(have_undivided_common_edge): New function, helper for the above.
+	(window_needs_vertical_divider): Return either a cached value,
+	or clauclate and cache one.
+	(invalidate_vertical_divider_cache_in_window): Implemented.
+	(map_windows): Changed return type to int, return the value from
+	MAPFUN.
+
+	* window.h: Prototype invalidate_vertical_divider_cache_in_window.
+	(struct window): Added need_vertical_divider_p and
+	need_vertical_divider_valid_p.
+
+	* winslots.h: Added vertical_divider_draggable_p slot.
+
+	* scrollbar.c (vertical_scrollbar_changed_in_window): Implemented.
+	(specifier_vars_of_scrollbar): Used it in all vertical specifiers.
+
+	* frame.c (invalidate_vertical_divider_cache_in_frame): New function.
+
+	* frame.h (MARK_FRAME_WINDOWS_STRUCTURE_CHANGED): Call
+	invalidate_vertical_divider_cache_in_frame().
+	Prototype it.
+
+1998-05-14  Andy Piper  <andyp@parallax.co.uk>
+
+	* toolbar-msw.c: provide correct parameters to TB_SETROWS.
+
+	* glyphs-msw.c (mswindows_initialize_image_instance_mask): size
+	masks correctly and don't select 0.
+
+1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* winslots.h: New file, declaration of some struct window and
+	struct saved_window members.
+
+	* window.h (struct window): Include it, with required preprocessor
+	magic.
+
+	* window.c (mark_window): Ditto.
+	(allocate_window): Ditto.
+	(struct saved_window): Ditto.
+	(mark_window_config): Ditto.
+	(saved_window_equal): Ditto.
+	(Fset_window_configuration): Ditto.
+
+1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* redisplay-msw.c (mswindows_output_vertical_divider): Syntax fix.
+
+1998-05-12  Didier Verna  <verna@inf.enst.fr>
+
+	* redisplay-x.c (x_output_vertical_divider): draw shadows around
+	the divider line. The shadow thickness is currently
+	hard-wired. This will probably be turned into a specifier soon.
+
+1998-05-12  Didier Verna  <verna@inf.enst.fr>
+
+	* console.h (struct console_methods): the divider_width console
+	method now requires a struct window * argument.
+
+	* redisplay-x.c (x_divider_width): ditto. Plus remove
+	X_DIVIDER_WIDTH, X_DIVIDER_SHADOW_THICKNESS.
+	(x_output_vertical_divider): give a depressed look when the shadow
+	thickness is negative.
+
+	* console-stream.c (stream_divider_width): pass a struct window *
+	argument.
+
+	* redisplay-tty.c (tty_divider_width): ditto.
+
+	* window.c (window_right_gutter_width): totdi.
+
+	* redisplay.c (generate_modeline): ittod.
+
+	* scrollbar.c (update_scrollbar_instance): ttido.
+
+	* redisplay-msw.c (mswindows_divider_width): ottid.
+	WARNING: this enables to compile, but the feature is not functional.
+
+	* window.h (struct window): new field
+	vertical_divider_shadow_thickness.
+
+	* window.c (specifier_vars_of_window): new specifier
+	vertical-divider-shadow-thickness.
+	(vertical_divider_shadow_thickness_changed): new function to
+	inform redisplay that the window has changed.
+	(mark_window): handle new field vertical_divider_shadow_thickness
+	from struct window.
+	(allocate_window): ditto.
+	(saved_window_equal): toddi.
+	(Fset_window_configuration): totid.
+	(save_window_save): ttdio.
+	(struct saved_window): new field vertical_divider_shadow_thickness.
+
+1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* device-msw.c (mswindows_device_system_metrics): Support a deluge
+	of metrics.
+
+1998-05-12  Oliver Graf <ograf@fga.de>
+
+	* frame-x.c (x_cde_transfer_callback): fixed for the new protocol
+	* event-Xt.c (x_event_to_emacs_event): C++ compability
+
+1998-05-14  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* emacs.c (Fdecode_path): Default SEPCHAR to value of
+	path-separator.
+
+1998-05-14  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* emacs.c (vars_of_emacs): Do it here; change the meaning of
+	Vpath_separator.
+
+	* fileio.c (vars_of_fileio): Don't define Vpath_separator here.
+
+1998-05-14  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* emacs.c (decode_path_1): New function.
+	(decode_path): Use it.
+	(Fdecode_path): Renamed from Fdecode_path_internal; use
+	decode_path_1.
+
+1998-05-12  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* macros.c (Fzap_last_kbd_macro_event): New function.
+	(Fend_kbd_macro): Remove REMOVE_LAST kludge.
+
+1998-05-10  Andy Piper  <andyp@parallax.co.uk>
+
+	* redisplay-msw.c (mswindows_output_dibitmap_region): make sure
+	multiple bitmaps are output vertically as well as horizontally.
+	* (mswindows_output_dibitmap): don't cope with bitmap boundaries
+	crossing lines this is handled by
+	mswindows_output_dibitmap_region.
+
+1998-05-12  Martin Buchholz  <martin@xemacs.org>
+
+	* inline.c: Include eldap.h
+
+	* menubar-x.c (x_update_frame_menubar_internal):
+	Remove: unused variable `container'
+
+1998-05-11  Martin Buchholz  <martin@xemacs.org>
+
+	* s/aix4.h: Allow AIX 4.3 XEmacs to compile cleanly.
+	Unfortunately, the resulting temacs still cannot dump.
+
+	* symbols.c (symbol_is_constant):
+	(verify_ok_for_buffer_local):
+	-Wswitch Warning suppression - add default case to switches.
+
+	* redisplay.c (decode_mode_spec): Remove unused variables,
+	Replace Fcoding_system_property (codesys, Qmnemonic) with
+	XCODING_SYSTEM_MNEMONIC (codesys);
+	Fcoding_system_property is for users.
+
+	* buffer.c:
+	* fileio.c:
+	* lread.c:
+	* xselect.c:
+	Change empty docstrings into no doc strings at all.
+	Fix bogus FSF-format docstrings.
+
+	* extents.c:
+	Standardize docstrings.
+
+	* floatfns.c:
+	Explain problems with matherr.
+
+	* glyphs.c:  make DEFUNs etags-readable, i.e. single-line
+
+	* syssignal.h:
+	if BROKEN_SIGIO, then SIGIO wants to be undefined.
+	if SIGIO and not SIGPOLL, SIGPOLL wants to be SIGIO.\
+	Fix the weird resultant interaction (causes windows problems)
+
+	* gdbinit:
+	* dbxrc:
+	Take new EMACSBOOTSTRAPLOADPATH into account.
+	Update documentation strings
+
+	* Makefile.in.in:
+	- Adjust for luser's CDPATH being set to something weird.
+	- Take into account bash 2.02's tendency to print the cwd when
+	  using CDPATH.  Always use `cd ./foo' instead of `cd foo'.
+	- fix the run-temacs target to use $(DUMPENV)
+	- fix the run-puremacs target to use $(DUMPENV)
+	- fix the `depend' target to properly $(RM) the right files
+	- Generate a better TAGS file for XEmacs' lisp code using
+	  hand-crafted regexps.
+	- Use standard coding conventions for modules/Makefile.in
+
+1998-05-12  Didier Verna  <verna@inf.enst.fr>
+
+	* redisplay.c: removed the scrolling modeline code that didn't
+	make it for 21.0. To be continued ...
+
+1998-05-13  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
+
+	* emacs.c (Fdecode_path_internal): Removed bogus handling of nil
+	and empty string inputs.
+
+1998-05-12  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* redisplay-x.c (x_output_vertical_divider): Fixed typo.
+
+1998-05-10  Oliver Graf <ograf@fga.de>
+
+	* event-stream.c (enqueue_misc_user_event_pos): created
+	* lisp.h (enqueue_misc_user_event_pos): prototype added
+	* frame-x.c (x_cde_transfer_callback): debug code plus API changes
+	* emacs.c: call vars_of_dragdrop
+	* dragdrop.c (vars_of_dragdrop): provide dragdrop
+
+1998-05-11  Oliver Graf <ograf@fga.de>
+
+	* frame-x.c (x_cde_transfer_callback): return at correct pos
+	* event-Xt.c (x_event_to_emacs_event): changed format of drop
+	object for MIME (see comment in dragdrop.c)
+	* dragdrop.c: API change documented in comment
+	removed provide of dragdrop [is provided by dragdrop.el]
+
+1998-05-12  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* window.c (window_needs_vertical_divider): Enable vertical
+	dividers for every non-rightmost window.
+	(window_left_gutter_width): Left gutter consists of mythical
+	toolbar and a virtual scrollbar.
+	(window_right_gutter_width): The right one may have a divider
+	also.
+
+	* scrollbar.c (update_scrollbar_instance): Position vertical
+	scrollbar left to divider if the latter present.
+
+	* redisplay.h: Declared OVER_DIVIER constant.
+
+	* redisplay.c (pixel_to_glyph_translation): Handle OVER_DIVIDER
+	case.
+
+	* redisplay-x.c (x_output_vertical_divider): Output divider along
+	the right side of the window, down to window bottom. Swapped
+	foreground and background colors so it is visible by default.
+
+	* redisplay-tty.c (tty_output_vertical_divider): Uncondiionally
+	stick the divider to the right window side.
+
+	* redisplay-msw.c (mswindows_redisplay_deadbox_maybe): Fixed
+	deadbox painting.
+	(mswindows_divider_width): Ask system for user preferred value.
+	(mswindows_output_vertical_divider): Always output the divider on
+	the right side of a window, down to bottom.
+
+	* keymap.c (get_relevant_keymaps): Route mouse button events which
+	happened over a window divider through window-divider-map.
+	(Fkey_binding): Documented that in the docstring.
+	Defined the variable Vwindow_divider_map.
+
+	* events.c (Fevent_over_divider_p): Added this function.
+
+	* events.h: EXFUNed it.
+
+1998-05-12  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* toolbar.c (update_frame_toolbars): Re-layout frame windows if
+	toolbar geometry is suspected to change.
+
+1998-05-11  Jonathan Harris  <jhar@tardis.ed.ac.uk>
+
+	* src/device-msw.c
+	* src/event-msw.c
+	Condition dnd and dde code on HAVE_DRAGNDROP.
+
+1998-05-11  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* events.c (format_event_object): Print space as SPC etc.
+
+1998-05-11  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* print.c (print_internal): In the default case, abort() if
+	ERROR_CHECK_TYPECHECK.
+
+	* fileio.c (Fmake_temp_name): Doc fix.
+
+1998-05-10  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* xgccache.c (describe_gc_cache): Define only if DEBUG_XEMACS.
+
+	* undo.c (Fprimitive_undo): Fixed typo.
+
+1998-05-11  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* fns.c (concat): Signal error on integer argument.
+
+1998-05-10  Kirill M. Katsnelson  <kkm@kis.ru>
+
+	* console.h (device_metrics): Prefixed each constatnt with DM_
+
+	* device.c: (Fdevice_system_metric): Renamed so from plural form
+	(metrics); Changed parameters order and added DEFAULT parameter;
+	Unabbreviated some metric constants; Fixed and untabified doc string.
+	(Fdevice_system_metrics): Added. Returns a plist of all provided
+	metrics.
+
+	* device-msw.c (mswindows_device_system_metrics): Renamed
+	device_metrics enum constants.
+	Return Qunbound instead of Qnil.
+
+	* device-tty.c (tty_device_system_metrics): Ditto.
+
+	* device-x.c (x_device_system_metrics): Ditto.
+
+1998-05-10  Andy Piper  <andyp@parallax.co.uk>
+
+	* redisplay-msw.c: implement background pixmaps (really!). Make
+	sure bg color is transparent if we have bg pmaps.
+	* (mswindows_output_string) (mswindows_clear_region): output bg
+	pmap if required.
+	* (mswindows_output_dibitmap_region): new function.
+	* (mswindows_output_dibitmap): output offset pixmaps, blt masks in
+	the bg color rather than transparently.
+
+	* toolbar-msw.c: use masks if they exist.
+
+	* glyphs-msw.c: set up masks correctly.
+
+	* event-msw.c: typedef SOCKET if cygwin and not msg select().
+
+1998-05-10  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* regex.c (re_match_2_internal): Check for quit.
+
+1998-05-10  Hrvoje Niksic  <hniksic@srce.hr>
+
+	* frame.c (Ffocus_frame): New function.