XEmacs -- Emacs: The Next Generation
     Searching XEmacs
Quick Links About XEmacs Getting XEmacs Customizing XEmacs Troubleshooting XEmacs Developing XEmacs

XEmacs XEmacs 21.5.18 "chestnut" is released

goto announcement, summary, changes

To: xemacs-announce@xemacs.org
From: "Stephen J. Turnbull, XEmacs Beta Release Engineer" <stephen@xemacs.org>
Subject: XEmacs 21.5.18 "chestnut" is released.
Organization: The XEmacs Project

*          XEmacs 21.5.18 "chestnut" is released.
      "chestnut" is the nineteenth in the VEGETABLE series.

Relative to XEmacs 21.5.17 "chayote", "chestnut" has Jerry James's new
bignum support.  You can now keep track of the U.S. national debt to
the penny, or count to Avogadro's number by ones!  Speaking of really
big numbers, Malcolm Purvis has one in mind: "two".  To GTK+ fans,
that's an awfully big number.  It's not here yet, but Malcolm has put
in a lot of patches, and a port to GTK+ v2 could start soon.  Jerry
James has started using the Uno code checker to clean up unused
variables and other ugliness.  Completion of the portable dumper
project is in sight, as Olivier Galibert has contributed code to
attach the dumpfile to the executable.

A large number of contributors have provided the usual assortment of
bug fixes and feature additions, small and large.

The 21.5 series is a development series, with lots of instability.

Current projects include a major revision of the internationalization
support (Mule), including robust Unicode support; improvements in the
garbage collector; bignum (arbitrary precision numbers) support;
further integration of the GTK+ port, including an upgrade to GTK+ v.2
compatibility; and support for TrueType and anti-aliased fonts on
X11-based platforms based on the Xft library.

Projects that have had some contributions, but are not yet firmly
established, include experimental branches for Qt and Carbon ports, a
third-party BeOS port, and others.  Those interested in contributing
to these, or to new projects, should speak up on on the "xemacs-design"
mailing list.

For general information about XEmacs, the developers, and the user
community, see our home page,


* XEmacs 21.5.18 is "unstable" software.

"Releases" in the development series should not be relied on to be
more than build checkpoints.  We expect XEmacs 21.5.18 to build
successfully on all supported platforms, and has passed all regression
tests on Linux and Mac OS X for the release engineer.

It is stable for many users in daily usage, and is recommended to MS
Windows users who need an internationalized XEmacs over the XEmacs
21.4 series.  However, there are many aspects where substantial
improvement is needed, and with major changes in the internals taking
place on a daily basis, you should be prepared to cope with crashes
and data loss.

* Availability

Anonymous ftp:


For beta releases, we provide only the full tarball, containing source
and prebuilt platform-independent modules (compiled Lisp and Info
files).  Information on building, installing, and reporting successes,
failures, and problems are contained in INSTALL and etc/BETA.  See
also http://www.xemacs.org/Install/, although that page is oriented to
users of the stable distribution.

If you already have a 21.5.17 source tree, a patchkit is available in
xemacs-21.5.17-21.5.18.patch.gz.  This does not update .elcs or .infos,
they will be rebuilt when you make XEmacs.  If you have an earlier
version, you can repeatedly apply patchkits.

Also, if you don't have the packages yet, see


Windows branch and installers:

There is no Windows branch in the development tree; Windows is a fully
supported platform.  Windows installers for 21.5 releases are provided
on a sporadic basis.  Check the XEmacs home page, or ask on xemacs-beta.

Qt and Carbon branches

These are totally unsupported, and the Carbon port does not currently
run on the release engineer's machine.  Adventurous souls who are
interested in developing these ports may check them out using the
CVS branch tags DEV_QT and Carbon, respectively.

BeOS port

The BeOS port does not yet have a branch of its own, and development
is quiescent.  Contact me ("Stephen J. Turnbull" <stephen@xemacs.org>)
and I will introduce you to the main developer.

Anonymous (pserver) CVS:

Anonymous CVS is available.  We are very grateful to the staff at our
host, SunSITE.dk, for a lot of help and quick reponse to all our

Take care that your Root is set correctly to


On platforms with a Bourne shell and find available, something like

      for r in `find . -name Root`; do echo $CVSROOT > $r; done

will convert your entire tree.

Tags are also the same; to update to release 21.5.18, use the release
tag "r21-5-18".  To ensure CVS will always update to the HEAD version,
clear any sticky tags with the "-A" flag.

For more details, see


Changes in XEmacs 21.5.18 "chestnut"

goto announcement, summary, changes

  • Improve: GTK support gets many fixes and improvements - Purvis. ()
  • Improve: pdump gets data in executable support, -si option - Galibert. ()
  • New: GTK gets default gtkrc - Purvis.
  • New: bignum support - James (lead), Sivakumar, Turnbull.
  • Fix: 'no-conversion is special in eol detection - Turnbull.
  • Fix: `display-completion-list' does not overflow window - Grundmann.
  • Fix: X error handler must not call stderr_out - Clements.
  • Fix: bogus error in `apropros' - Turnbull.
  • Fix: bogus error in `package-require' - Youngs.
  • Fix: buffer editing by `call-process-region' - Aichner.
  • Fix: coredump from bogus position computation in syntax cache - Euler.
  • Fix: coredump from redisplay wrapping in signal.c - James.
  • Fix: coredump in giflib - Hines.
  • Fix: etags.el correctly handles tags with name fields - Grundmann.
  • Fix: prevent minibuffer from hijacking marks - Sperber.
  • Fix: respect `allow-deletion-of-last-visible-frame' - Zajcev.
  • Fix: sync revert-buffer to 21.4 - Turnbull, Sparapani.
  • Improve: error message formatting - Gatzemeier.
  • Improve: etags.el optimized for exuberant ctags - Grundmann.
  • Improve: isearch-abort preserves interim successes - Turnbull, Zawinski.
  • Improve: package info reporting - Youngs.
  • Improve: window configuration handling - Rychter.
  • Fix: 64-bit support - Purvis, SuSE.
  • Fix: configure.in syntax, logic - Turnbull, James, Purvis.
  • Fix: make install went interactive - Aichner.
  • Fix: rebuild finder-inf.el - Turnbull.
  • Improve: Makefile diagnostics - Turnbull.
  • Improve: Windows build support - Aichner.
  • Improve: configure compiler warning setup - James, Purvis.
  • Improve: configure diagnostics - Turnbull.
  • Improve: configure feature detection - Purvis, James, Turnbull.
  • Improve: configure report - Turnbull, James.
  • Improve: icc support - James.
  • Improve: install procedure - Galibert.
  • New: configure supports Playstation2 - Myrkraverk.
  • New: support for parallel builds - Purvis.
  • Improve: about.el version reporting - Turnbull.
  • Improve: comments and docstrings - Turnbull, Aichner, Gatzemeier.
  • New: lispref.texi documents bignum support - Turnbull, James.
  • New: lispref.texi documents text field support - James.
  • Update: FAQ - Turnbull.
  • Update: NEWS - Turnbull.
  • Update: PACKAGES - Koch.
  • Update: about.el - Turnbull.
  • Update: internals.texi - James, Turnbull.
  • Update: lispref.texi - Turnbull, Okahata.
  • Update: menus to XEmacs config file reality - Turnbull.
  • Improve: pixel position reporting - Okahata.
  • Fix: C macro definition for icc - James.
  • Fix: C++ build problems - James, Verna.
  • Fix: Cygwin bug workaround conditionalized - James.
  • Fix: Lisp internal type manipulation - James.
  • Fix: bogus CVS conflict in package-ui.el - Aichner.
  • Fix: callproc.c vestiges removed - James.
  • Fix: format conversions in pdump report - Turnbull.
  • Fix: function argument usage - James.
  • Fix: incomplete macro in external widget support - Golubev.
  • Fix: lwlib GC handling - James.
  • Fix: lwlib computation of widget changes - James.
  • Fix: mark unused parameters - James, Wing.
  • Fix: remove duplicate functions - Turnbull.
  • Fix: remove unused variables - James.
  • Fix: specifier validation - James.
  • Fix: update byte compiler function database - James.
  • Fix: warning suppression - James, Gatzemeier.
  • Fix: workaround Darwin's distaste for ISO 8859/2 filenames.
  • Improve: custom database save - Aichner, Niksic.
  • Improve: itimer implementation - James, Jones, Buchholz, Yamaoka.
  • Improve: test-harness.el Assert macro - James.
  • New: LTDL support in ELLs - James.
  • Update: INSTALL Canna, Make descriptions - James, Purvis.
  • Update: SERVICE sync with upstream - James.
  • Update: derived.el, subr.el, cl*.el sync to Emacs 21.3 - James.
  • Update: etags sync with upstream v17.6 - James.
  • Fix: regression tests using most-negative-fixnum - James.
  • Improve: faster Mule tests - Turnbull.
  • New: Uno support - James.
  • New: regression tests - Turnbull, Youngs, Yamaoka, Shelton, James.

ChangeLogs for XEmacs 21.5.18 "chestnut"

goto announcement, summary, changes

ChangeLog Entries from ChangeLog

goto announcement, summary, changes

2004-10-22  Stephen J. Turnbull  <stephen@xemacs.org>

	* XEmacs 21.5.18 "chestnut" is released.

2004-10-22  Stephen J. Turnbull  <stephen@xemacs.org>

	* CHANGES-beta: Update for release.

2004-09-29  Jerry James  <james@xemacs.org>

	* configure.in: Don't use -Wunused-parameter with g++.

2004-09-21  Malcolm Purvis  <malcolmp@xemacs.org>

	* configure.in: Unused parameter and variables warnings are GCC 3
	or greater.

2004-09-14  Jerry James  <james@xemacs.org>

	* configure.in (TAB): Add unused parameter and variables warnings
	to gcc CFLAGS.

2004-09-20  Jerry James  <james@xemacs.org>

	* INSTALL: Update Canna description to reflect recent changes.

2004-09-11  Malcolm Purvis  <malcolmp@xemacs.org>

	* configure.in Check for sys/resource.h, sys/vlimit.h, getrlimit()
	and vlimit().

2004-09-10  Malcolm Purvis  <malcolmp@xemacs.org>

	* INSTALL: A POSIX compatible Make is required for builds.
	* Makefile.in.in: Enable support for parallel builds.

2004-08-12  "Johann 'Myrkraverk' Oskarsson" <myrkraverk@users.sourceforge.net>

	* config.guess: Identify PlayStation2.

2004-06-16  Stephen J. Turnbull  <stephen@xemacs.org>

	* configure.in: Character classes in globs don't work, die when
	GTK is mixed with other toolkits, protect comma in quoted message.

2004-06-14  Stephen J. Turnbull  <stephen@xemacs.org>

	* configure.in (Autodetection of Gdk libraries and includes):
	Don't allow mixing of GTK with other toolkits.

2004-06-12  Stephen J. Turnbull  <stephen@xemacs.org>

	* configure.in: Improve style of WARNINGs.

2004-05-20  Stephen J. Turnbull  <stephen@xemacs.org>

	* configure.in (HAVE_GPM): Die if GPM requested but not found.

2004-05-10  Jerry James  <james@xemacs.org>

	* aclocal.m4: Typo fix.
	* configure.in (XE_COMPUTE_RUNPATH): Add checks for shl_load and
	LTDL; unify the OS-specific checks into a case statement.

2004-04-30  Jerry James  <james@xemacs.org>

	* configure.in: Turn ICC warning 147 into an error to get a good
	XRegisterIMInstantiateCallback prototype.

2004-04-28  Jerry James  <james@xemacs.org>

	* configure.in: Get version information for both icc and icpc.

2004-04-08  Stephen J. Turnbull  <stephen@xemacs.org>

	* configure.in (GTK setup): Warn if other toolkits requested.

2004-03-31  Stephen J. Turnbull  <stephen@xemacs.org>

	* configure.in (Compiler feature macros): Kaarthik Sivakumar says
	_POSIX_C_SOURCE should be defined for FreeBSD 4.5 to 4.9 at least.

2004-03-31  Stephen J. Turnbull  <stephen@xemacs.org>

	* Makefile.in.in (install-arch-indep): make gzip-el now saves ~4MB.

2003-12-07  Olivier Galibert  <galibert@pobox.com>

	* Makefile.in.in: Don't install the dmp file when it's in the

2004-04-12  Kaarthik Sivakumar  <kaarthik@comcast.net>

	* configure.in: Check for libmp dependencies before checking for
	the existence of the move function.

2004-03-04  Malcolm Purvis  <malcolmpurvis@optushome.com.au>

	* configure.in (src/Makefile): No longer include a special linker
	script for PowerPC Linux.  Thanks to Stefan Bruda for reporting
	this bug.

2004-04-08  Stephen J. Turnbull  <stephen@xemacs.org>

	* configure.in (Compiler-specific hacks): Restore warning flags
	for XEMACS_CC if gcc.  Report warning flags at compute time.

2004-04-07  Jerry James  <james@xemacs.org>

	* configure.in: FreeBSD MP needs -lcrypto.

2004-04-06  Jerry James  <james@xemacs.org>

	* configure.in: Change test -e to test -r for portability.

2004-04-06  Stephen J. Turnbull  <turnbull@sk.tsukuba.ac.jp>

	* configure.in (use_number_lib): Accepts no to disable bignums.
	* configure.usage: Document the "no" value.

2004-04-05  Jerry James  <james@xemacs.org>

	* configure.in (use_number_lib): New.  Values are "gmp" or "mp".
	* configure.in: Use it. Report it. Check for size of a double.
	* configure.usage: Tell how to use use-number-lib.

ChangeLog Entries from etc/ChangeLog

goto announcement, summary, changes

2004-10-22  Stephen J. Turnbull  <stephen@xemacs.org>

	* XEmacs 21.5.18 "chestnut" is released.

2004-10-07  Jerry James  <james@xemacs.org>

	* etags.1:
	Update to author version 17.6.

2004-04-19  Stephen J. Turnbull  <turnbull@sk.tsukuba.ac.jp>

	* NEWS (Introduction): Rewording.
	(Changes in XEmacs 21.5): New section.

2004-08-10  Jerry James  <james@xemacs.org>

	* ETAGS.EBNF: New file.  Describes the syntax of an ETAGS file.

2004-08-10  Jerry James  <james@xemacs.org>

	* SERVICE: Update to latest version from www.gnu.org.

2004-05-15  Malcolm Purvis  <malcolmp@xemacs.org>

	* etc/gtkrc: New file.  This is the GTK equivalent of the app-default

2004-03-30  Norbert Koch  <viteno@xemacs.org>

	* PACKAGES: Introduce new packages escreen, xlib, and xwem.

ChangeLog Entries from lib-src/ChangeLog

goto announcement, summary, changes

2004-10-22  Stephen J. Turnbull  <stephen@xemacs.org>

	* XEmacs 21.5.18 "chestnut" is released.

2004-10-07  Jerry James  <james@xemacs.org>

	* etags.c: Update to author version 17.6.

2004-09-14  Jerry James  <james@xemacs.org>

	* digest-doc.c (main): Remove unused argc and argv.
	* fakemail.c (main): Ditto.
	* make-dump-id.c (main): Ditto.
	* profile.c (main): Ditto.
	* sorted-doc.c (main): Ditto.
	* gnuclient.c (tell_emacs_to_resume): Mark unused parameters.
	* gnuserv.c (main): Ditto.
	* make-docfile.c (write_c_args): Ditto.
	* pop.c (socket_connection): Ditto.

2004-08-10  Jerry James  <james@xemacs.org>

	* etags.c: Update to author version 16.56.

2004-04-17  Olivier Galibert  <galibert@pobox.com>

	* insert-data-in-exec.c (main): Fix error message.

2003-12-07  Olivier Galibert  <galibert@pobox.com>

	* Makefile.in.in (insert-data-in-exec): Added target.

	* insert-data-in-exec.c: Added.

ChangeLog Entries from lisp/ChangeLog

goto announcement, summary, changes

2004-10-22  Stephen J. Turnbull  <stephen@xemacs.org>

	* XEmacs 21.5.18 "chestnut" is released.

2004-09-25  Jerry James  <james@xemacs.org>

	* itimer.el (start-itimer): Cannot use set-itimer-name now that
	that function does not uniquify names.

2004-09-22  Stephen J. Turnbull  <stephen@xemacs.org>

	* startup.el (load-init-file):
	Remove bogus comments.

2004-09-23  Stephen J. Turnbull  <stephen@xemacs.org>

	* about.el (xemacs-hackers): Fix Malcolm's address.

2004-09-22  Jerry James  <james@xemacs.org>

	* itimer.el (set-itimer-name): Do not uniquify names, as requested
	by Kyle Jones.

2004-09-19  Stephen J. Turnbull  <stephen@xemacs.org>

	* code-init.el: Add to header comment.
	* gtk-font-menu.el: Improve documentation.
	* unicode.el: Various comments added.
	* process.c (process-buffer):
	Document interaction with filters.

2004-09-14  Stephen J. Turnbull  <stephen@xemacs.org>

	* x-font-menu.el: (x-fonts-menu-junk-families): Improve docstring.
	(hack-font-truename): Improve docstring.

	* font-menu.el (font-menu-ignore-scaled-fonts): Improve docstring.
	(font-menu-this-frame-only-p): Improve docstring.
	(font-menu-preferred-resolution): Improve docstring.
	(font-menu-size-scaling): Improve docstring.
	(device-fonts-cache): Move comment into docstring and improve it.
	(reset-device-font-menus): Improve docstring.
	(reset-device-font-menus): Move message into if; only announce
	we're getting font list if we're actually going to do it.

2003-12-14  Stephen J. Turnbull  <stephen@xemacs.org>

	* cl-macs.el (loop): Fixed typo in docstring.

2003-11-02  Stephen J. Turnbull  <stephen@xemacs.org>

	* itimer.el (check-itimer-coerce-string): Fix sense of docstring;
	markup signal name as code.
	(check-nonnegative-number): Markup signal name as code.

2004-07-12  Stephen J. Turnbull  <stephen@xemacs.org>

	* specifier.el (set-specifier): Sentences in docstrings should be
	separated with two spaces, not one.

	* find-paths.el (paths-lisp-filename-regexp): Improve docstring.

2004-07-12  Stephen J. Turnbull  <stephen@xemacs.org>

	* about.el (xemacs-hackers): Update turnbull, add viteno.
	(about-current-release-maintainers): Add martin, vin, and viteno.
	Move inactive hackers from other-current to once-and-future.
	(about-url-alist):  Add turnbull, xemacs-cvs, and xemacs-lists.
	* about.el (about-xemacs):
	Add information about package maintainers.
	Mention Vin, Stephen, and Andy w.r.t. 21.4.
	Mention Ben and Martin w.r.t. 21.2.
	(about-advantages): Mention GNU Emacs 21.
	(about-personal-info): Update turnbull.

2004-05-15  Stephen J. Turnbull  <stephen@xemacs.org>

	* specifier.el (set-specifier): Fix typo in comment.

2004-07-12  Stephen J. Turnbull  <stephen@xemacs.org>

	* about.el (about-xemacs):
	Give more precise version info.
	Compute version numbers.

2004-09-21  Jerry James  <james@xemacs.org>

	* itimer.el (start-itimer): Fix my bungling of Martin's intentions.

2004-09-20  Martin Buchholz <martin@xemacs.org>

	* itimer.el (set-itimer-name): New function.
	(start-itimer): Use it.

2003-12-12  Katsumi Yamaoka  <yamaoka@jpl.org>

	* itimer.el (activate-itimer): Modify the itimer timeout value as
	if it were begun at the last time when the itimer driver was woken

2004-09-15  Stephen J. Turnbull  <stephen@xemacs.org>

	Fix bug: apropos errors if a defalias refers to an undefined
	function.  <87pt4pmdcs.fsf@tleepslib.sk.tsukuba.ac.jp>

	* apropos.el (apropos):
	* help.el (frob-help-extents):
	* help-macro.el (make-help-screen):
	* hyper-apropos.el (hyper-apropos-grok-functions):
	Catch void-function error thrown by `documentation'.

2004-09-07  Steve Youngs  <steve@youngs.au.com>

	* packages.el (package-require): Fix incorrect arg to format.
	This fixes a `format specifier' error.

2004-08-15  Jan Rychter <jwr@xemacs.org>

	* window-xemacs.el (really-set-window-configuration): deal
	gracefully with the case when the buffer previously saved in the
	configuration (and that we want to switch to) has been
	killed. Switch to the next buffer on the buffer-list in that case.

2004-08-13  Jerry James  <james@xemacs.org>

	* bytecomp.el (forward-word): Tell the byte compiler the correct
	number of arguments to forward-word.

2004-07-02  Malcolm Purvis  <malcolmp@xemacs.org>

	* widgets-gtk.el (gtk-widget-instantiate-notebook-internal):
	Loading items into the notebook is now done by C code.
	* widgets-gtk.el (gtk-widget-instantiate-internal):
	Style no longer changed.

2004-06-24  Jerry James  <james@xemacs.org>

	* cl-compat.el: Synch with Emacs 21.3.
	* cl-extra.el: Ditto.
	* cl-extra.el (cl-push): Removed because superfluous.
	* cl-extra.el (cl-pop): Removed because superfluous.
	* cl-extra.el (cl-emacs-type)): Removed because unused.
	* cl-extra.el (cl-map-keymap): Just alias map-keymap.
	* cl-extra.el (cl-map-keymap-recursively): Drop Emacs 18 support.
	* cl-extra.el (cl-copy-tree): Removed because superfluous.
	* cl-extra.el (cl-remprop): New alias.
	* cl-extra.el (cl-make-hash-table): New alias.
	* cl-extra.el (cl-hash-table-p): New alias.
	* cl-extra.el (cl-hash-table-count): New alias.
	* cl-macs.el: Synch with Emacs 21.3.
	* cl-macs.el (cl-push): Removed because superfluous.
	* cl-macs.el (cl-pop): Removed because superfluous.
	* cl-macs.el (cl-emacs-type): Removed because unused.
	* cl-macs.el (cl-compile-time-init): Drop Emacs 18 and 19 support.
	* cl-macs.el (return): Change arg name to match Emacs and docstring.
	* cl-macs.el (return-from): Ditto.
	* cl-macs.el (loop): Check for 'collecting as well as 'collect.
	* cl-macs.el (define-setf-expander): New alias.
	* cl-macs.el (caar): New setf method.
	* cl-macs.el (cadr): New setf method.
	* cl-macs.el (cdar): New setf method.
	* cl-macs.el (cddr): New setf method.
	* cl-macs.el (deftype): Change arg name to match Emacs and docstring.
	* cl-macs.el (ignore-errors): Change docstring to match arg name.
	* cl-seq.el: Synch with Emacs 21.3.
	* cl-seq.el (cl-push): Removed because superfluous.
	* cl-seq.el (cl-pop): Removed because superfluous.
	* cl-seq.el (mismatch): Typo fix.
	* cl.el: Synch with Emacs 21.3.
	* cl.el (cl-map-extents): Alias map-extents.
	* cl.el (values): Change from defalias to defsubst to add docstring.
	* cl.el (values-list): Ditto.
	* cl.el (multiple-value-list): Ditto.
	* cl.el (multiple-value-apply): Ditto.
	* cl.el (nth-value): Ditto.
	* cl.el (cl-abs): Alias the `abs' builtin instead.
	* cl.el (svref): New alias.
	* cl.el (cl-add-hook): Removed due to obsolescence.
	* cl.el (cl-hack-byte-compiler): Set cl-hacked-flag first for safety.

2004-06-26  Steve Youngs  <steve@youngs.au.com>

	* package-get.el (package-get-info-name-array): New.
	(package-get-info-info-array): New.
	(package-get-info): Use them, adding completion.
	(package-get-list-packages-where): Add completion.

2004-06-21  Adrian Aichner  <adrian@xemacs.org>

	* package-ui.el (pui-help-echo): Fix false cvs conflict by
	avoiding line solely composed of equal signs.

2004-06-18  Jerry James  <james@xemacs.org>

	* derived.el (define-derived-mode): Put the arguments to
	derived-mode-merge-syntax-tables in the correct order.

2004-06-17  Jerry James  <james@xemacs.org>

	* derived.el (define-derived-mode): XEmacs does not have
	char-table-parent.  Use derived-mode-merge-syntax-tables instead.

2004-06-09  Stephen J. Turnbull  <stephen@xemacs.org>

	* subr.el (split-string): Clean up docstring.

2004-06-17  Stephen J. Turnbull  <stephen@xemacs.org>

	* help.el (with-syntax-table): Removed.  (Prefer version in subr.el.)

2004-06-16  Jerry James  <james@xemacs.org>

	* cl.el (cl-set-substring): Increment start by the length of the
	string, not the string itself.

2004-06-07  Jerry James  <james@xemacs.org>

	* derived.el: Synch with Emacs 21.3.
	* subr.el (with-local-quit): New, from Emacs 21.3.
	* subr.el (delayed-mode-hooks): New variable, from Emacs 21.3.
	* subr.el (run-mode-hooks): New function, from Emacs 21.3.
	* subr.el (delay-mode-hooks): New macro, from Emacs 21.3.

2004-06-10  Adrian Aichner  <adrian@xemacs.org>

	* cus-edit.el (custom-save-variables): Fix bug introduced by
	nconc/make-list removal.
	* cus-edit.el (custom-save-faces): Ditto.

2004-06-07  Adrian Aichner  <adrian@xemacs.org>

	* cus-edit.el (custom-browse-visibility): Typo fix.
	* cus-edit.el (custom-variable-value-create): Ditto.
	* cus-edit.el (custom-save-variables): Simply use push instead of
	make-list and nconc, as suggested by Hrvoje and already used in
	* cus-edit.el (custom-save-faces): Ditto.

2004-06-07  Adrian Aichner  <adrian@xemacs.org>

	* mule/ethio-util.el (ethio-sera-to-fidel-region): Phrase
	duplication typo fixes for typos found by
	* mule/mule-charset.el (make-translation-table): Ditto.

2004-06-07  Adrian Aichner  <adrian@xemacs.org>

	* files.el (basic-save-buffer): Ditto.
	* lisp-mode.el (eval-interactive-verbose): Ditto.
	* newcomment.el (uncomment-region): Ditto.

2003-12-03  Adrian Aichner  <adrian@xemacs.org>

	* files.el (delete-old-versions): Avoid going interactive during
	make install when environment variable VERSION_CONTROL is set.

2004-04-21  Sven Grundmann  <sven@hellerhof.de>

	* list-mode.el (display-completion-list): Fixed completion list was
	taking the width of the frame and not of the window for displaying
	the selection methods.

2004-05-21  Jerry James  <james@xemacs.org>

	* cl.el (cl-random-time): Chop a bignum down to a fixnum if
	(featurep 'bignum), not if (featurep 'number-types).

2004-05-15  Malcolm Purvis  <malcolmp@xemacs.org>

	* gtk-widgets.el: New import: gtk-accel-group-new.
	* dialog-gtk.el:
	* dialog-gtk.el (gtk-popup-convert-underscores): New.
	* dialog-gtk.el (popup-builtin-question-dialog):

	Added support for dialog button mnemonics.

2004-04-30  Stephen J. Turnbull  <stephen@xemacs.org>

	* cl.el (gensym, gentemp): Improve docstrings.

2004-05-11  Stephen J. Turnbull  <stephen@xemacs.org>

	* code-init.el (set-eol-detection): Special-case 'no-conversion.

2004-05-10  Stephen J. Turnbull  <stephen@xemacs.org>

	* isearch-mode.el (isearch-forward, isearch-abort): Document that our
	behavior of `isearch-abort' differs from that of GNU Emacs.

2004-05-08  Sven Grundmann  <sven@xemacs.org>

	* etags.el:
	* etags.el (tags-exuberant-ctags-optimization-p): Enable optimization
	only for use with exuberant ctags. This will also enable building of 
	completion tables with exuberant ctags. This will not work with
	xemacs ctags. New.
	* etags.el (get-tag-table-buffer): New function for creating of
	completion table is used if tags-exuberant-ctags-optimization-p ist t
	* etags.el (add-to-tag-completion-table-exuberant-ctags): Defun for
	building tag completion table with exuberant ctags. New.
	* etags.el (find-tag-internal): Improve exact tag matching for tags
	with name fields. Before the patch return types of functions or
	function parameters (with exuberant ctags) were found as matches.

2004-04-20  Malcolm Purvis  <malcolmpurvis@optushome.com.au>

 	* gtk-marshal.el: Return type for INT is gint, not guint.

2004-02-23  Stephen J. Turnbull  <stephen@xemacs.org>

	* isearch-mode.el (isearch-abort): Preserve successful search target.

2004-04-19  Stephen J. Turnbull  <turnbull@sk.tsukuba.ac.jp>

	* startup.el (site-start-file):
	Improve documentation.

2004-04-18  Stephen J. Turnbull  <stephen@xemacs.org>

	* menubar-items.el (default-menubar): Options are saved to custom.el.

2004-04-16  Stephen J. Turnbull  <stephen@xemacs.org>

	* help.el (help-register-and-maybe-prune-excess): Trim docstring.
	Sanity check argument.
	(with-displaying-temp-buffer): Improve docstring.

2004-04-09  Stephen J. Turnbull  <turnbull@sk.tsukuba.ac.jp>

	* files.el (revert-buffer): Synch to 21.4.  Suggested by
	Rodney Sparapani <rsparapa@post.its.mcw.edu>.

2004-04-09  Mike Sperber  <mike@xemacs.org>

	* minibuf.el (reset-buffer): Zap the mark of the minibuffer as
	well, to prevent it from hijacking other buffers' marks when
	typing in the minibuffer later.

2004-04-05  Jerry James  <james@xemacs.org>

	* cl-extra.el (coerce): Add support for general numeric conversions.
	* cl.el (eql): Update for more number types.
	* cl.el (cl-random-time): Ensure the result is a fixnum.
	* cl.el (most-positive-fixnum): Do not define in Lisp if enhanced
	number types are available.
	* cl.el (most-negative-fixnum): Ditto.

2004-03-23  Adrian Aichner  <adrian@xemacs.org>

	* code-process.el (call-process-region): Correct start and end
	marker construction, delete regions before and after insertion

ChangeLog Entries from lwlib/ChangeLog

goto announcement, summary, changes

2004-10-22  Stephen J. Turnbull  <stephen@xemacs.org>

	* XEmacs 21.5.18 "chestnut" is released.

2004-09-27  Jerry James  <james@xemacs.org>

	* lwlib-Xm.c (xm_update_label):
	Mark more unused parameters with the UNUSED macro.

2004-09-14  Jerry James  <james@xemacs.org>

	* Makefile.in.in (cppflags): Make compiler.h available.
	* config.h.in: Include compiler.h.
	* lwlib.c (max): Remove; now defined in compiler.h.
	(merge_widget_value): Fix misplaced `change' computation.
	* xlwcheckbox.c (DrawCheck): conditionalize declaration and
	assignment of variable bw like its use.
	* xlwtabs.c (TabsResize): Comment out declaration and assignment
	of variable tab, whose use is commented out.

	* lwlib-Xaw.c:
	* lwlib-Xlw.c:
	* lwlib-Xm.c:
	* lwlib-utils.c:
	* lwlib.c:
	* xlwcheckbox.c:
	* xlwgauge.c:
	* xlwgcs.c:
	* xlwmenu.c:
	* xlwradio.c:
	* xlwscrollbar.c:
	* xlwtabs.c:
	Mark unused parameters with the UNUSED macro.

2004-09-14  Jerry James  <james@xemacs.org>

	* xlwgauge.c (GaugeConvert): Fix type-punning warning.

2004-04-23  Jerry James  <james@xemacs.org>

	* xlwradio.c (RadioExpose): Do not blindly copy one GC over
	another.  It messes up the ref counts and is wrong for radio
	buttons in any case.

ChangeLog Entries from man/ChangeLog

goto announcement, summary, changes

2004-10-22  Stephen J. Turnbull  <stephen@xemacs.org>

	* XEmacs 21.5.18 "chestnut" is released.

2003-11-02  Stephen J. Turnbull  <stephen@xemacs.org>

	* lispref/control.texi (Examples of Catch): Mention use of a cons
	as a catch tag.

2004-07-20  Stephen J. Turnbull  <stephen@xemacs.org>

	* lispref/glyphs.texi (Image Instantiator Formats): Add a few
	words about the tab control widget.

2004-05-14  Darryl Okahata  <darrylo@xemacs.org>

	* lispref/windows.texi.  Added documentation for the functions,
	``current-pixel-row'' and ``current-pixel-column''.

2004-09-13  Jerry James  <james@xemacs.org>

	* internals/internals.texi (Modules for Interfacing with the
	Operating System): The code formerly in callproc.c is now
	implemented in Lisp in process.el.

2004-08-30  Jerry James  <james@xemacs.org>

	* lispref/text.texi: Document text fields.

2004-09-08  Stephen J. Turnbull  <stephen@xemacs.org>

	* lispref/searching.texi (Syntax of Regexps): Add example of use
	of shy groups in variable subexpression, correct rumor that there
	may be substantial performance gain.  Document double-digit back-

2004-08-13  Stephen J. Turnbull  <stephen@xemacs.org>

	* xemacs/help.texi (Misc Help): Info-goto-emacs-key-command-node
	to function index.  Document Info-goto-emacs-command-node.

	* lispref/positions.texi (Text Lines):  makeinfo doesn't like Note:.

2004-07-19  Stephen J. Turnbull  <stephen@xemacs.org>

	* lispref/glyphs.texi: Complete reorganization, some content updated.
	* lispref/lispref.texi (Top): Update menu to match.
	* lispref/extents.texi (Extent Properties): Update xref.

2004-06-29  Stephen J. Turnbull  <stephen@xemacs.org>

	* internals/internals.texi (Modules for Other Aspects of the Lisp
	Interpreter and Object System): Add description of Sextword syntax
	class (now obsolete).

2004-06-20  Stephen J. Turnbull  <stephen@xemacs.org>

	* internals/internals.texi (Techniques for XEmacs Developers): Be
	specific when discussing optimization.
	(Techniques for XEmacs Developers): Fragments that are meaningless
	by themselves or contain placeholders should be @samp, not @code.
	(Modules for Internationalization): Add description of mule-coding.c
	and further deprecate mule.c.
	(Modules for Regression Testing): Add {tag,weak}-tests.el to list.

2004-07-05  Stephen J. Turnbull  <stephen@xemacs.org>

	* xemacs-faq.texi (Q3.10.2): Mention that `pending-delete' is in
	the "pc" package.

2004-06-15  Stephen J. Turnbull  <stephen@xemacs.org>

	* lispref/specifiers.texi (Specifier Instancing): Add "neon
	modeline" hack as an example.  Thanks to Giacomo Boffi.

2004-06-07  Jerry James  <james@xemacs.org>

	* lispref/modes.texi (Major Modes): Document -mode functions, and
	the use of a nil argument to defined-derived mode.
	* lispref/modes.texi (Major Mode Conventions): Describe the use of
	delay-mode-hooks and define-derived-mode.
	* lispref/modes.texi (Derived Modes): Warn against the use of
	interactive specs in derived mode definitions.
	* lispref/modes.texi (Hooks): Document run-mode-hooks,
	delay-mode-hooks, run-hook-with-args,
	run-hook-with-args-until-failure, and0

2004-06-14  Stephen J. Turnbull  <stephen@xemacs.org>

	* lispref/glyphs.texi (Creating Glyphs): Improve discussion, fix a
	couple of typos.

	* lispref/faces.texi (Face Properties): Background pixmaps
	can be used on GTK and MS Windows.
	(Face Convenience Functions): Cross-reference glyph interface.
	Background pixmap is an image specifier, not a glyph.

2004-05-21  Stephen J. Turnbull  <stephen@xemacs.org>

	* lispref/numbers.texi (Comparison of Numbers): Clarify bigfloat eql.
	(Predicates on Numbers): Fix thinko in description of `bigfloatp'.

2004-05-10  Stephen J. Turnbull  <stephen@xemacs.org>

	* lispref/numbers.texi (Numbers): Remove reference to "fixed-
	precision rationals," and fix description of floating-point
	(Integer Basics, Float Basics): Fix typos.
	(Canonicalization and Contagion): Complete rewrite.
	(Predicates on Numbers): Add fixnump, bignump, ratiop, rationalp,
	bigfloatp, floatingp, realp, oddp and evenp.
	(Rational Basics): Add numerator and denominator.
	(Random Numbers): Fix description of range, and add paranoid
	comment about how unpredictable `(random t)' is.
	(Canonicalization and Contagion): Renamed from Contagion and
	(The Bignum Extension): Fix it in menu.

2004-05-10  Stephen J. Turnbull  <stephen@xemacs.org>

	* internals/internals.texi (Object-Oriented Techniques for C):
	Remove reference to "encouraging port to C++".

2004-04-19  Stephen J. Turnbull  <stephen@xemacs.org>

	* lispref/numbers.texi (The Bignum Extension): Mention the feature
	symbols provided.

2004-04-19  Stephen J. Turnbull  <stephen@xemacs.org>

	* lispref/numbers.texi (Rational Basics): There's a reason why
	this node is named "Rational" and not "Ratio" in the menu....

2004-04-18  Stephen J. Turnbull  <stephen@xemacs.org>

	* internals/internals.texi (Object-Oriented Techniques in XEmacs):
	New node.
	(The XEmacs Object System (Abstractly Speaking)):
	Reorder the list of objects somewhat.
	Add brief descriptions of the arbitrary-precision number types.
	(Writing Good Comments): Slight revision, recommend @xemacs alias.
	(Character-Related Data Types): Add a few comments re Unicode.
	(Working With Character and Byte Positions): Ditto.
	(General Guidelines for Writing Mule-Aware Code): Query.
	(Conversion to and from External Data): Ditto.
	(Techniques for XEmacs Developers): Typo.
	(Modules for Regression Testing): Add an xref.
	(Overview): Note that dump file is now inside the executable.
	(Remaining issues): Mention ExecShield vs. pdumper.
	(Searching and Matching): Mention UTF-8 wrt Mule.

2004-02-22  Stephen J. Turnbull  <stephen@xemacs.org>

	* widget.texi (Introduction): Update historical references a bit.
	Fix many typos and grammatical problems.
	(User Interface): Fix typo.

2004-04-09  Stephen J. Turnbull  <stephen@xemacs.org>

	* lispref/numbers.texi (Numbers): Describe bignums, ratios, and
	bigfloats briefly.
	(Integer Basics): We've had 31-bit integers for a while.  Fix the
	statement of minimum available precision and the examples.
	Document most-positive-fixnum and most-negative-fixnum.  Add a
	pointer to the node "The Bignum Extension".
	(Float Basics): Document most-positive-float, most-negative-float,
	least-positive-float, least-positive-normalized-float,
	least-negative-float, and least-negative-normalized-float.  Add a
	pointer to the node "The Bignum Extension".
	(Comparison of Numbers): Update for bignums.

	(The Bignum Extension):
	(Bignum Basics):
	(Ratio Basics):
	(Bigfloat Basics):
	(Contagion and Canonicalization):
	(Compatibility Issues):
	New nodes.

	* lispref/lispref.texi (Top):
	* lispref/numbers.texi (Numbers): 
	Add nodes "Ratio Basics" and "The Bignum Extension" to menus.

2004-01-26  Stephen J. Turnbull  <stephen@xemacs.org>

	* lispref/specifiers.texi: Update FSF copyright.
       (Specifier Compatibility Notes): New node.

	* lispref/glyphs.texi (Glyph Properties): Fix typo.
	(Native GUI Widgets): New node.

	* lispref/gutter.texi (Gutter Descriptor Format): Node deleted.
	(Gutter Intro): 
	(Creating Gutter): 
	(Specifying a Gutter): 
	Pluralize node name to Creating Gutters.
	(Creating Gutters): Improve explanation of gutter descriptors.
	(Other Gutter Variables): Remove extraneous text.
	(Common Gutter Widgets): In lieu of real documentation, at least
	point to gutter-items.el.

2004-04-06  Stephen J. Turnbull  <stephen@xemacs.org>

	Lightly revised from <psr7v1j039.fsf@diannao.ittc.ku.edu>.
	Thanks to Jerry James <james@xemacs.org>.

	* xemacs-faq.texi (Top, Miscellaneous): In menus, renumber Section
	5.3 and Q5.3.1-12 as 5.4.x, and add Mathematics and Q5.3.1-4 as
	replacement section 5.3.
	(Q5.3.1, Q5.3.2, Q5.3.3, Q5.3.4) New FAQs for bignums.
	(Q5.2.1, Q8.0.1) Add @unnumberedsec headings.
	(Q6.4.1) Correct @unnumberedsec heading.

ChangeLog Entries from modules/ChangeLog

goto announcement, summary, changes

2004-10-22  Stephen J. Turnbull  <stephen@xemacs.org>

	* XEmacs 21.5.18 "chestnut" is released.

2004-09-14  Jerry James  <james@xemacs.org>

	* postgresql/postgresql.c:
	* ldap/eldap.c:
	Mark unused parameters with the UNUSED macro.

2004-09-14  Jerry James  <james@xemacs.org>

	* ldap/eldap.c (Fldap_open): Change ldap_passwd to ldap_password
	to eliminate a gcc shadow warning.

2004-09-13  Jerry James  <james@xemacs.org>

	* ldap/eldap.c (signal_ldap_error): Mark as noreturn.

ChangeLog Entries from netinstall/ChangeLog

goto announcement, summary, changes

2004-10-22  Stephen J. Turnbull  <stephen@xemacs.org>

	* XEmacs 21.5.18 "chestnut" is released.

ChangeLog Entries from nt/ChangeLog

goto announcement, summary, changes

2004-10-22  Stephen J. Turnbull  <stephen@xemacs.org>

	* XEmacs 21.5.18 "chestnut" is released.

2004-09-13  Jerry James  <james@xemacs.org>

	* xemacs.dsp: Remove callproc.c as a source file.

2004-06-01  Adrian Aichner  <adrian@xemacs.org>

	* xemacs.mak: Don't echo DEL command.  Use COPYCMD everywhere.
	Remove /r switch from COPY and COPYDIR, as environment variable
	COPYCMD takes care of this.
	* xemacs.mak (COPYCMD): New.  Used to initialize environment
	variable by same name.
	* xemacs.mak (TEMACS_CPP_FLAGS_NO_CFLAGS): Handle
	xemacs_extra_name (CVS date stamp).

ChangeLog Entries from nt/installer/Wise/ChangeLog

goto announcement, summary, changes

2004-10-22  Stephen J. Turnbull  <stephen@xemacs.org>

	* XEmacs 21.5.18 "chestnut" is released.

ChangeLog Entries from src/ChangeLog

goto announcement, summary, changes

2004-10-22  Stephen J. Turnbull  <stephen@xemacs.org>

	* XEmacs 21.5.18 "chestnut" is released.

2004-10-19  Jerry James  <james@xemacs.org>

	* console-stream.c (init_console_stream): Mark another unused param.

2004-10-19  Jerry James  <james@xemacs.org>

	* events.c: Define USED_IF_TTY and USED_IF_TOOLBARS.  Use them to
	mark more unused parameters.
	* console.c: Define USED_IF_TTY and use it.
	* sysdep.c: Define USED_IF_TTY.  Mark more unused parameters.
	Update a URL in a comment.

2004-10-16  Malcolm Purvis  <malcolmp@xemacs.org>

	* gtk-xemacs.c (gtk_xemacs_size_allocate): Cast pointer to right type.

2004-10-14  Jerry James  <james@xemacs.org>

	* compiler.h: New USED_IF_MULE and USED_IF_MULE_OR_CHECK_TEXT macros.
	* glyphs-msw.c (charset_of_text): Use USED_IF_MULE.
	* intl-x.c (init_x_locale): Ditto.
	* intl-win32.c: Remove USED_IF_MULE definition.
	* regex.h: Mark RE_LISP_SHORT_CONTEXT_ARGS_DECL arguments unused.
	New RE_LISP_CONTEXT_ARGS_MULE_DECL macro for one unused case.

	* buffer.h:
	* device-x.c:
	* elhash.c:
	* objects.c:
	* regex.c:
	* search.c:
	* text.c:
	* text.h:
	* unicode.c:
	Mark more unused parameters.

2004-09-27  Jerry James  <james@xemacs.org>

	* gmalloc.c (malloc): Change log to log2 to quiet gcc 3.3.

2004-09-27  Jerry James  <james@xemacs.org>

	* sysdep.c: Mark more unused parameters with the UNUSED macro.

2004-09-21  Jerry James  <james@xemacs.org>

	* ExternalClient.c: Include compiler.h.
	* ExternalShell.c: Ditto.

2004-09-19  Stephen J. Turnbull  <stephen@xemacs.org>

	* file-coding.c: Improve explanatory comments, add diatribes.
	Fix some typos in comments.

2003-11-21  Stephen J. Turnbull  <stephen@xemacs.org>
	* dired.c (Fdirectory_files): MATCH is only tried against basename.

2003-11-02  Stephen J. Turnbull  <stephen@xemacs.org>

	* eval.c (Fcatch, Fthrow): Document that tags are compared with `eq'.

2003-10-31  Stephen J. Turnbull  <stephen@xemacs.org>

	* procimpl.h (struct Lisp_Process):
	* undo.c (Fprimitive_undo): 
	Remove obsolete references to ENERGIZE in comments.

2004-07-18  Stephen J. Turnbull  <stephen@xemacs.org>

	* glyphs.c (Fimage_instance_type): Add 'widget to docstring.

2004-07-12  Stephen J. Turnbull  <stephen@xemacs.org>

	* glyphs-widget.c (tab_control_query_geometry):
	Typos in comments.

2004-06-29  Stephen J. Turnbull  <stephen@xemacs.org>

	* syntax.c (Sextword): Doesn't seem to exist.  Move comment to
	Internals manual.

2004-09-21  Jerry James  <james@xemacs.org>

	* sound.c (Fwait_for_sounds): Factor out test for unused parameter.
	(Fconnected_to_nas_p): Ditto.

2004-05-14  Darryl Okahata  <darrylo@xemacs.org>

	* window.c (current-pixel-row, current-pixel-column).  Added a
	new function, ``current-pixel-row'', that returns the pixel row
	of point.  current-pixel-column was modified to share code with

2004-09-14  Jerry James  <james@xemacs.org>

	* compiler.h: Change old UNUSED_ARG into UNUSED_ARG and
	ATTRIBUTE_UNUSED.  Create a new UNUSED macro that works in the
	common case.  Define conservatively for the Intel compiler.
	* dialog-x.c (dbox_descriptor_to_widget_value): Comment out
	declaration and assignment of unused variable title.
	(x_make_dialog_box_internal): Remove unused variable parent.
	* emacs.c (Fkill_emacs): Uno doesn't grok typeof.
	* file-coding.c (Fdefine_coding_system_alias): Remove unused
	variable real_coding_system.
	* glyphs.c (map_subwindow): Remove unused variable f.
	* gui-x.c (button_item_to_widget_value): Rename intlen to
	unused_intlen to quiet Uno.
	* miscplay.c (UNUSED): Removed in favor of compiler.h version.
	* mule-canna.c (Fcanna_touroku_string): Remove unused variable
	* mule-canna.c (Fcanna_henkan_next): Remove unused variable endp.
	* mule-ccl.c (CCL_WRITE_STRING): Remove unused variable bytes and
	fix some indentation problems.
	* number-gmp.h: Turn off gcc extensions for Uno.
	* redisplay-output.c (compare_display_blocks): #if 0 out
	declaration and assignment of unused variable block_end.
	* redisplay.c (regenerate_window_extents_only_changed): Remove
	unused variable new_start.
	(regenerate_window_incrementally): Ditto.
	* scrollbar.c (update_scrollbar_instance): #if 0 out declaration
	and assignment of unused variable new_window.
	* specifier.c (specifier_instance): Remove unused variable tag.
	* sysdep.c (tty_init_sys_modes_on_device): Define and assigne
	variable output_fd only when it will be used.
	(tty_reset_sys_modes_on_device): Ditto.
	* sysproc.h: Define the FD_* macros conservatively for Uno.
	* syssignal.h (SIG_ARG_MAYBE_UNUSED): New macro.
	* syswait.h: Define the W* macros conservatively for Uno.

	* EmacsFrame.c:
	* EmacsManager.c:
	* ExternalClient.c:
	* ExternalShell.c:
	* alloc.c:
	* balloon_help.c:
	* bytecode.c:
	* callint.c:
	* casetab.c:
	* chartab.c:
	* cm.c:
	* cmdloop.c:
	* console-gtk.c:
	* console-msw.c:
	* console-stream.c:
	* console-tty.c:
	* console-x.c:
	* console.c:
	* data.c:
	* database.c:
	* device-gtk.c:
	* device-msw.c:
	* device-tty.c:
	* device-x.c:
	* device.c:
	* dialog-gtk.c:
	* dialog-msw.c:
	* dired.c:
	* dumper.c:
	* editfns.c:
	* elhash.c:
	* emacs.c:
	* esd.c:
	* eval.c:
	* event-Xt.c:
	* event-gtk.c:
	* event-msw.c:
	* event-stream.c:
	* event-tty.c:
	* events.c:
	* extents.c:
	* faces.c:
	* file-coding.c:
	* fileio.c:
	* filemode.c:
	* floatfns.c:
	* fns.c:
	* frame-gtk.c:
	* frame-msw.c:
	* frame-tty.c:
	* frame-x.c:
	* frame.c:
	* free-hook.c:
	* glyphs-eimage.c:
	* glyphs-gtk.c:
	* glyphs-msw.c:
	* glyphs-shared.c:
	* glyphs-widget.c:
	* glyphs-x.c:
	* glyphs.c:
	* gpmevent.c:
	* gtk-xemacs.c:
	* gui-msw.c:
	* gui-x.c:
	* gui.c:
	* gutter.c:
	* hpplay.c:
	* input-method-motif.c:
	* input-method-xlib.c:
	* intl-win32.c:
	* intl-x.c:
	* keymap.c:
	* lread.c:
	* lstream.c:
	* marker.c:
	* menubar-gtk.c:
	* menubar-msw.c:
	* menubar-x.c:
	* menubar.c:
	* minibuf.c:
	* miscplay.c:
	* mule-charset.c:
	* mule-coding.c:
	* nas.c:
	* native-gtk-toolbar.c:
	* nt.c:
	* ntplay.c:
	* number-gmp.c:
	* number.c:
	* objects-gtk.c:
	* objects-msw.c:
	* objects-tty.c:
	* objects-x.c:
	* objects.c:
	* opaque.c:
	* print.c:
	* process-nt.c:
	* process-unix.c:
	* profile.c:
	* rangetab.c:
	* redisplay-gtk.c:
	* redisplay-msw.c:
	* redisplay-output.c:
	* redisplay-tty.c:
	* redisplay-x.c:
	* redisplay.c:
	* regex.c:
	* scrollbar-gtk.c:
	* scrollbar-msw.c:
	* scrollbar-x.c:
	* scrollbar.c:
	* search.c:
	* select-gtk.c:
	* select-msw.c:
	* select-x.c:
	* sgiplay.c:
	* signal.c:
	* sound.c:
	* specifier.c:
	* sunpro.c:
	* symbols.c:
	* syntax.c:
	* sysdep.c:
	* terminfo.c:
	* tests.c:
	* text.c:
	* text.h:
	* toolbar-gtk.c:
	* toolbar-msw.c:
	* toolbar-x.c:
	* toolbar.c:
	* tooltalk.c:
	* ui-byhand.c:
	* ui-gtk.c:
	* unexaix.c:
	* unexalpha.c:
	* unexconvex.c:
	* unexcw.c:
	* unexec.c:
	* unexelf.c:
	* unexelfsgi.c:
	* unexencap.c:
	* unexenix.c:
	* unexfreebsd.c:
	* unexfx2800.c:
	* unexhp9k3.c:
	* unexhp9k800.c:
	* unexmips.c:
	* unexnt.c:
	* unexsni.c:
	* unexsol2-6.c:
	* unexsol2.c:
	* unexsunos4.c:
	* unicode.c:
	* vm-limit.c:
	* win32.c:
	* window.c:
	Mark unused parameters with the UNUSED macro.

2004-09-19  Jerry James  <james@xemacs.org>

	* s/windowsnt.h (DECLARE_DOESNT_RETURN_TYPE): Remove extern so
	that static funcions can be declared.

2004-09-14  Jerry James  <james@xemacs.org>

	* mule-canna.c (CANNA_NEW_WCHAR_AWARE): Define to use new wchar
	* mule-canna.c (call_Fding): Return an int to match the jrBeepFunc
	* mule-canna.c (Fcanna_initialize): The jrBeepFunc prototype is
	now given in the Canna headers.

2004-09-14  Jerry James  <james@xemacs.org>

	* gifrlib.h: Remove redundant extern declarations.

2004-09-14  Jerry James  <james@xemacs.org>

	* doprnt.c (emacs_doprnt_1): Change message to msg to eliminate a
	gcc shadow warning.
	* glyphs-gtk.c:
	* glyphs.h:
	Use enum image_instance_type and do not typedef the enum to
	image_instance_type to eliminate a gcc shadow warning.

2004-09-14  Jerry James  <james@xemacs.org>

	* linuxplay.c (linux_play_data_or_file): Fix type punning

2004-09-14  Jerry James  <james@xemacs.org>

	* compiler.h: Change definition of RETURN_NOT_REACHED for icc.
	* glyphs-eimage.c (tiff_memory_write): Quiet gcc warning.

2004-09-13  Jerry James  <james@xemacs.org>

	* callproc.c: Really remove.

2004-09-13  Jerry James  <james@xemacs.org>

	* s/windowsnt.h: Define (DECLARE_)DOESNT_RETURN_TYPE instead of
	* buffer.c (nsberror): Mark as noreturn.
	* cmdloop.c (Fcommand_loop_1): Mark as noreturn when
	* cmdloop.c (Freally_early_error_handler): Mark as noreturn.  Use
	RETURN_NOT_REACHED to quash compiler warnings.
	* cmdloop.c (command_loop_3): Ditto.
	* cmdloop.c (command_loop_2): Ditto.
	* cmdloop.c (call_command_loop): Ditto, both versions.
	* cmdloop.c (command_loop_1): Ditto, when !LISP_COMMAND_LOOP.
	* cmdloop.c (Fcommand_loop_1): Ditto, when !LISP_COMMAND_LOOP.
	* commands.h (call_command_loop): Declare as noreturn.
	* compiler.h: Define (DECLARE_)DOESNT_RETURN_TYPE for functions
	with non-void return types.  Use them to define
	* device-x.c (x_IO_error_handler): Use RETURN_NOT_REACHED.
	* emacs.c (Frun_emacs_from_temacs): Mark as noreturn.
	* emacs.c (Fkill_emacs): Ditto.  Use RETURN_NOT_REACHED.
	* eval.c (unwind_to_catch): Declare as noreturn.
	* eval.c (throw_or_bomb_out): Ditto.  Remove comments about
	warnings that will now not be generated.
	* eval.c (Fthrow): Mark as noreturn.  Use RETURN_NOT_REACHED.
	* eval.c (Fsignal): Use RETURN_NOT_REACHED.
	* eval.c (flagged_a_squirmer): Mark as noreturn.  Use
	* fns.c (base64_conversion_error): Declare as noreturn.
	* frame-gtk.c (gtk_cant_notify_wm_error): Ditto.
	* frame-x.c (x_cant_notify_wm_error): Ditto.
	* gif_io.c (GifError): Mark as noreturn.
	* gif_io.c (GifInternError): Ditto.
	* gifrlib.h (GifInternError): Declare as noreturn.
	* gifrlib.h (GifError): Ditto.
	* lisp.h (EXFUN_NORETURN): New macro.
	* lisp.h (DEFUN_NORETURN): New macro.
	* lisp.h (Fkill_emacs): Declare as noreturn.
	* lisp.h (Fthrow): Ditto.
	* lread.c (read_syntax_error): Ditto.
	* minibuf.c (Fread_minibuffer_internal): Mark as noreturn.  Don't
	bother calling specpdl_depth and unbind_to_1 since
	call_command_loop never returns.
	* objects.c (finalose): Mark as noreturn.
	* objects.h (finalose): Declare as noreturn.
	* process-unix.c (child_setup): Ditto.
	* search.c (matcher_overflow): Ditto.
	* search.c (signal_failure): Ditto.  Make the return type void and
	remove the return statement.
	* search.c (search_command): Change the use of signal_failure to
	match, using RETURN_NOT_REACHED.

2004-08-18  Felix H. Gatzemeier  <f.g@tzemeier.info>

	* doprnt.c (emacs_doprnt_1): Use sprintf to format error messages
	from the formatting function.
	* eval.c (syntax_error): Emphasize that `reason' is not processed
	as a format string.

2004-09-11  Malcolm Purvis  <malcolmp@xemacs.org>

	* config.h.in: Added entries for sys/resource.h, sys/vlimit.h,
	getrlimit() and vlimit().
	* mem-limits.h: Use configure to check for the presence of
	OS-specific functions.  General cleanup.

2004-09-10  Jerry James  <james@xemacs.org>

	* intl-encap-win32.c (qxeDocumentProperties): Conditionalize
	Cygwin bug workaround on w32api header version.

2004-08-18  Felix H. Gatzemeier  <f.g@tzemeier.info>

	* alloc.c (malloced_storage_size): Renamed log to log2, twice,
	to fix a shadow warning in gcc 3.3.4.

2004-09-10  Malcolm Purvis  <malcolmp@xemacs.org>

	* Makefile.in.in: Enable support for parallel builds.

2004-08-26  Jerry James  <james@xemacs.org>

	* device-x.c (x_init_device): Remove unused variable device.
	* device-x.c (x_delete_device): Ditto.

2004-08-26  Jerry James  <james@xemacs.org>

	* eval.c (Ffuncall): Remove unused variable orig_fun.

2004-08-26  Jerry James  <james@xemacs.org>

	* event-Xt.c (emacs_Xt_unselect_console): Remove unused variable

2004-08-26  Jerry James  <james@xemacs.org>

	* event-stream.c (munge_keymap_translate): Remove unused variable n.

2004-08-26  Jerry James  <james@xemacs.org>

	* glyphs-eimage.c (tiff_memory_write): Use RETURN_NOT_REACHED.

2004-08-26  Jerry James  <james@xemacs.org>

	* gutter.c (output_gutter): Removed unused variable frame.

2004-08-25  Jerry James  <james@xemacs.org>

	* redisplay-x.c (x_output_string): Remove unused variable device.

2004-08-12  Jerry James  <james@xemacs.org>

	* window.c (margin_width_internal): Remove unused variable b.
	* toolbar-common.c (common_output_toolbar_button): Remove unused
	variable frame.

2004-08-10  Jerry James  <james@xemacs.org>

	* emacs.c (really_abort): make its return type DOESNT_RETURN.
	* lisp.h: declare really_abort with DECLARE_DOESNT_RETURN.

2004-08-04  Jerry James  <james@xemacs.org>

	* regex.c: Fix the previous patch by moving to the right place.

2004-08-03  Jerry James  <james@xemacs.org>

	* regex.c: Move #define gettext after #include "lisp.h" to avoid
	breaking the C++ build on Fedora systems.

2004-07-27  Malcolm Purvis  <malcolmp@xemacs.org>

	* frame-gtk.c (gtk_make_frame_visible):
	* frame-gtk.c (gtk_make_frame_invisible): Use map/unmap instead of
	show/hide.  This is what X uses and is prevents previously hidden
	widgets from suddenly reappearing.
	* gtk-xemacs.c (gtk_xemacs_paint):
	* gtk-xemacs.c (gtk_xemacs_draw):
	* gtk-xemacs.c (gtk_xemacs_expose): Only operate if the widget is
	* scrollbar-gtk.c (gtk_update_scrollbar_instance_status): Force
	size and location changes so that they can be seen before the next
	idle event.  Without this rapid changes to scrollbar properties
	are not seen.

2004-07-07  Malcolm Purvis  <malcolmp@xemacs.org>

	* console-gtk-impl.h:
	* console-gtk-impl.h (struct gtk_frame):
	  Add hash tables track tab_control callback data.
	  Added #defines for GTK object data names.
	* console-gtk.h: Declaration of gtk_widget_to_frame().
	* frame-gtk.c (gtk_widget_to_frame): New.
	* frame-gtk.c (gtk_create_widgets):
	* frame-gtk.c (allocate_gtk_frame_struct):
	* frame-gtk.c (gtk_mark_frame):
	Manage frame callbakc hash tables.
	* glyphs-gtk.c (gtk_map_subwindow): Fix size and moving bugs.
	* glyphs-gtk.c (gtk_redisplay_widget): Use correct size for widgets.
	* glyphs-gtk.c (gtk_widget_instantiate_1): Force reconsideration
	of widget size.
	* glyphs-gtk.c (gtk_widget_query_geometry): New
	* glyphs-gtk.c (gtk_register_gui_item): New
	* glyphs-gtk.c (gtk_add_tab_item): New
	* glyphs-gtk.c (gtk_tab_control_callback): New
	* glyphs-gtk.c (gtk_tab_control_instantiate): New
	* glyphs-gtk.c (gtk_tab_control_redisplay): Set notebook page.
	Use correct list when loading item.
	* glyphs-gtk.c (image_instantiator_format_create_glyphs_gtk):
	Register new methods.
	* gtk-xemacs.c (gtk_xemacs_size_allocate): Use XEmacs size, not
	default size, for widgets.
	* gui-gtk.c: Improved comment.
	* gui-x.c:  Improved comment.
	* menubar-gtk.c (__generic_button_callback): Use
	gtk_widget_to_frame instead of __get_channel.
	* scrollbar-gtk.c:
	* ui-gtk.c: Use symbolic names for GTK object data.

2004-07-06  Lutz Euler  <lutz.euler@freenet.de>

	* syntax.c (setup_syntax_cache): Fix behavior for buffers
	containing multibyte chars.
	Fixes "Fatal error: assertion failed, file src/buffer.h, line 617,
	(x) >= ((Charbpos) 1) && x <= ((buf)->text->bufz + 0)"

2004-06-29  Jerry James  <james@xemacs.org>

	* specifier.c (check_valid_inst_list): Change LIST_LOOP to
	* specifier.c (check_valid_spec_list): Ditto.

2004-06-16  Malcolm Purvis  <malcolmp@xemacs.org>

	* malloc.c (morecore): siz is a long because in some architectures
	(eg ia-64) an int cannot hold the address range.  Additional patch
	from the SuSe distribution.

2004-06-15  Malcolm Purvis  <malcolmp@xemacs.org>

	* emacs.c:
	* malloc.c: lim_data is a long because in some architectures
	(eg ia-64) an int cannot hold the address range.
	* mem-limits.h: lim-data is a long.  Linux uses getrlimit() instead
	of ulimit() because ulimit() always returns -1.
	* file-coding.h (struct Lisp_Coding_System): Moved a field to the
	end of the structure to work around alignment problems on the ia-64.
	* file-coding.c (struct convert_eol_coding_system): Added dummy
	field to work around alignment problems on the ia-64.

2004-06-08  Didier Verna  <didier@xemacs.org>

	* config.h.in (EXTERN_C_BLOCK_BEGIN): Remove.
	* nas.c: Use BEGIN_C_DECLS and END_C_DECLS instead.

2004-06-07  Adrian Aichner  <adrian@xemacs.org>

	* device-x.c (x_IO_error_handler): Phrase duplication typo fixes
	for typos found by

2004-06-06  Ilya N. Golubev  <gin@mo.msk.ru>

	* extw-Xt.c (_XT_WAIT_FOR_SOMETHING): Fix: complete macro
	renaming: #define.

2004-06-03  Didier Verna  <didier@xemacs.org>

	* config.h.in (EXTERN_C_BLOCK_BEGIN): New macro.
	* nas.c: Use them around audio headers.
	* extw-Xt.c: Fix EXTERN_C usage (see 2004-06-02 below).

2004-06-02  Didier Verna  <didier@xemacs.org>

	C++ related fixes.

	* ExternalClient-Xlib.c (window_has_focus_p): Fix nchild parameter
	* ExternalClient.c (ComputeWindowAttributes): Fix old K&R function
	* ExternalClient.c (Destroy): Ditto.
	* ExternalClient.c (QueryGeometry): Ditto.
	* ExternalShell.c (EventHandler): Ditto.
	* ExternalShell.c (ExternalShellDestroy): Ditto.
	* ExternalShell.c (ChangeManaged): Ditto.
	* ExternalShell.c (ExternalShellRootGeometryManager): Ditto.
	* extw-Xt.c: Wrap `fatal' and `_XtWaitForSomething' function
	prototypes in EXTERN_C.
	* extw-Xt.c (_XT_WAIT_FOR_SOMETHING): Rename macro (previously
	* extw-Xt.c (extw_wait_for_response): Use it.
	* nas.c (EXTERN_C): Wrap audio headers inclusion in EXTERN_C.

2004-05-21  Jerry James  <james@xemacs.org>

	* floatfns.c (Ffloat): Add missing return keyword.
	* number.h: Declare Qbignump, Qratiop, and Qbigfloatp in every case.
	* number.c: Ditto.
	* number.c (syms_of_number): Ditto.  Declare
	Fbigfloat_get_precision and Fbigfloat_set_precision.
	* number.c (Fbigfloat_get_precision): New function.
	* number.c (Fbigfloat_set_precision): New function.
	* number.c (vars_of_number): Clarify that default-float-precision
	of 0 means to create normal floats.  Change bigfloat-max-prec to

2004-05-15  Malcolm Purvis  <malcolmp@xemacs.org>

	* glyphs-gtk.c (gtk_xpm_instantiate): Rewrite the XPM data to
	replace symbolic color entries with the real colors specified in
	xpm-color-symbols, before passing the XPM to gtk.
        * glyphs-gtk.h: Use the generic pixmap_image_instance.mask for masks,
        instead of a GTK specific field, so that it is used in by generic

2004-05-15  Malcolm Purvis  <malcolmp@xemacs.org>

	* event-gtk.c:
	* event-gtk.c (gtk_event_to_emacs_event):
	* menubar-gtk.c:
	* menubar-gtk.c (gtk_xemacs_menubar_class_init):
	* menubar-gtk.c (gtk_xemacs_menubar_size_request):
	* menubar-gtk.c (gtk_xemacs_accel_label_get_type):
	* menubar-gtk.c (gtk_xemacs_set_accel_keys):
	* menubar-gtk.c (__activate_menu):
	* menubar-gtk.c (convert_underscores):
	* menubar-gtk.c (remove_underscores):
	* menubar-gtk.c (menu_convert):
	* menubar-gtk.c (menu_descriptor_to_widget_1):
	* menubar-gtk.c (menu_descriptor_to_widget):
	* menubar-gtk.c (menu_can_reuse_widget):
	* menubar-gtk.c (menu_create_menubar):
	* menubar-gtk.c (gtk_popup_menu):
	* menubar-gtk.c (Fgtk_build_xemacs_menu):

	Added support for Gtk menu bar and menu item mnemonics.

2004-05-10  Jerry James  <james@xemacs.org>

	* config.h.in: Add HAVE_LTDL.
	* emodules.c: Include LTDL headers, if needed.
	* emodules.c (vars_of_module): Add LTDL initialization code.
	* sysdll.c: Remove unused dll_init functions.  Add LTDL support.
	* sysdll.h: Remove dll_init declaration and adjust spacing.

2004-05-05  Chuck Hines <chuck.hines@baesystems.com>

	* dgif_lib.c (DGifSlurp): Changed do-while to while to stop
	coredump from deref of NULL ptr (ExtData)

2004-05-05  Jerry James  <james@xemacs.org>

	DEFINE_LRECORD_IMPLEMENTATION for bignum, ratio, and bigfloat.
	* number.c (bignum_finalize): Remove; we already do this with an
	ADDITIONAL_FREE macro in alloc.c.
	* number.c (ratio_finalize): Ditto.
	* number.c (bigfloat_finalize): Ditto.
	* number.c (vars_of_number): Put all initialization of
	Vbigfloat_max_prec here, but leave some commented until we can
	dump bignums.
	* number.c (init_number): Remove Vbigfloat_max_prec

2004-05-03  Jerry James  <james@xemacs.org>

	* floatfns.c (Fexpt): Don't shadow the global symbol exp.
	* number.c: Remove unused testing function string_to_bignum and
	extraneous semicolon; thanks to Vin.
	* number.h: Add make_floating prototype.

2004-04-20  Malcolm Purvis  <malcolmpurvis@optushome.com.au>

	* console-gtk-impl.h: Include X11.h.
	* console-gtk-impl.h (struct gtk_device): Use X types for keysym data.
	* data.c (Fstring_to_number): Cast Ibtye to char* for atoX arg.
	* device-gtk.c (gtk_init_device): Convert gtkrc filename to extern
	encoding before use by GTK.
	* device-gtk.c (Fgtk_grab_pointer): Cast bitmask to expected type.
	* emacs-marshals.c: INT return type is gint, not guint.
	* event-gtk.c: Add args to gtk_keysym_to_emacs_keysym() prototype.
	* event-gtk.c (gtk_event_to_emacs_event): Cast button posn from
	double to int.
	* event-gtk.c (gtk_reset_key_mapping): Avoid casts to void* for
	* frame-gtk.c (gtk_set_initial_frame_size): Avoid '|' of bitfield enum.
	* frame-gtk.c (gtk_initialize_frame_size): Cast to right type.
	* frame-gtk.c (gtk_get_frame_parent): Cast to right type.
	* frame-gtk.c (gtk_set_frame_size): Avoid '|' of bitfield enum.
	* gccache-gtk.c: mask type is unsigned long, not enum.
	* gccache-gtk.c (gc_cache_lookup): mask type is unsigned long, not enum.
	* gccache-gtk.h (gc_cache_lookup): mask type is unsigned long, not enum
	* glade.c (Fglade_xml_signal_connect): Cast Ibtye to char*.
	* glyphs-gtk.c: Remove extra definition of Qxface.
	* glyphs-gtk.c (gtk_print_image_instance):  #ifdef, not #if, HAVE_SUBWINDOWS.
	* glyphs-gtk.c (gtk_finalize_image_instance): cast to right type.
	* glyphs-gtk.c (gtk_image_instance_equal): #ifdef, not #if, HAVE_SUBWINDOWS.
	* glyphs-gtk.c (gtk_image_instance_hash): #ifdef, not #if, HAVE_SUBWINDOWS.
	* glyphs-gtk.c (xbm_instantiate_1): Use Extbyte*, not char*.
	* glyphs-gtk.c (struct color_symbol): Use Ibyte, not char*.
	* glyphs-gtk.c (extract_xpm_color_names): Pass correct data to free_cons().
	* glyphs-gtk.c (gtk_xpm_instantiate): width, height are gint, not
	unsigned.  Use proper internal strcasecmp function.
	* glyphs-gtk.c (resource_name_to_resource): Expect
	image_instance_type, not int.
	* glyphs-gtk.c (resource_symbol_to_type): Return
	image_instance_type, not int.
	* glyphs-gtk.c (gtk_resource_instantiate): Use
	image_instance_type, not int.
	* glyphs-gtk.c (cursor_name_to_index): Return GdkCursorType, not
	* glyphs-gtk.c (cursor_font_instantiate): Use  GdkCursorType, not
	* glyphs-gtk.c (gtk_redisplay_widget): Commented out unused var.
	* glyphs-gtk.c (BUILD_GLYPH_INST): Use ExtByte, not char*
	* glyphs-gtk.c (gtk_colorize_image_instance): Cast to enum
	* glyphs.h: typedef image_instance_type.
	* gtk-glue.c (xemacs_gtklist_to_list): Cast first arg of
	g_list_foreach() to right type.
	* gtk-glue.c (xemacs_list_to_array): Cast to cghar*.
	* gtk-glue.c (gdk_event_to_emacs_event): Cast button posn from
	double to int.
	* gtk-xemacs.c (gtk_xemacs_new): Cast constructor return to right type.
	* gtk-xemacs.c (gtk_xemacs_draw): Cast data to right type.
	* gui-gtk.c: Removed double definition of Qmenu_no_selection_hook.
	* menubar-gtk.c (gtk_xemacs_menubar_new): Cast constructor return to right type.
	* menubar-gtk.c (menu_name_to_accelerator): Remove unnecessary
	cast to unsigned char.
	* menubar-gtk.c (remove_underscores): Use Ibyte, char char*
	* menubar-gtk.c (menu_descriptor_to_widget_1): ditto
	* menubar-gtk.c (menu_can_reuse_widget): ditto
	* objects-gtk.c (gtk_initialize_font_instance): Cast to right type.
	* objects-gtk.c (gtk_find_charset_font): Use Ibyte, not char*.
	* objects-gtk.c (__get_gtk_font_truename): ditto.
	* redisplay-gtk.c (gtk_get_gc): Cast mask to right type.
	* redisplay-gtk.c (gtk_output_string):Font attibs are int, not
	* scrollbar-gtk.c (scrollbar_cb): Cast to right type.
	* select-gtk.c (gtk_own_selection): Removed unused var selection_time.
	* sysdll.c (search_linked_libs): Count is unsigned.
	* sysdll.c (dll_function): Cast function pointer to void*.
	* ui-byhand.c (generic_toolbar_insert_item): Cast Ibyte to char*.
	* ui-gtk.c: Macro to hide manipulation of fundamental types.
	* ui-gtk.c (initialize_dll_cache): Type problems with literal
	* ui-gtk.c (Fdll_load): Use Ibyte form of strdup.
	* ui-gtk.c (__allocate_object_storage): Cast during fundamental type test.
	* ui-gtk.c (type_to_marshaller_type): Cast during fundamental type test.
	* ui-gtk.c (__dll_mapper): Use CIbyte, not char*.
	* ui-gtk.c (Fgtk_import_function_internal): Cast during fundamental type test.
	* ui-gtk.c (Fgtk_call_function): Cast during fundamental type test.
	* ui-gtk.c (Fgtk_describe_type): Cast during fundamental type test.
	* ui-gtk.c (gtk_type_to_lisp): Cast during fundamental type test.
	* ui-gtk.c (lisp_to_gtk_type): Cast during fundamental type test.
	* ui-gtk.c (lisp_to_gtk_ret_type): Cast during fundamental type test.

2004-04-30  Jerry James  <james@xemacs.org>

	* number.c (vars_of_number): Fix comment.  Initialize
	bigfloat-max-prec when it is possible to do so safely.
	* number.c (init_number): If bigfloat-max-prec is a bignum, set it
	only when initialized.

2004-04-19  Jerry James  <james@xemacs.org>

	* data.c (sign_extend_lisp_int): Use INT_VALBITS instead of
	VALBITS to compute the location of the sign bit.
	* event-stream.c (Fcurrent_event_timestamp): Replace incorrect use
	* events.c (Fevent_timestamp): Ditto.
	compute the halfway point to timestamp wraparound.
	* floatfns.c (float_to_int): Compare against EMACS_INT_MAX and
	EMACS_INT_MIN instead of using VALBITS.
	* floatfns.c (Flogb): Use EMACS_INT_MIN instead of building an
	incorrect number with VALBITS.
	* fns.c (Frandom): Use INT_VALBITS instead of VALBITS to compute
	the denominator.
	* sysdep.c (get_random): Use INT_VALBITS instead of VALBITS to
	build random numbers.

2004-04-18  Jerry James  <james@xemacs.org>

	* dump-data.c (dumped_data_get): Change return type to char *.
	* dump-data.h (dumped_data_get): Ditto.

2004-04-15  Jerry James  <james@xemacs.org>

	* signal.c (check_what_happened): Remove check for proper
	redisplay wrapping.
	* signal.c (check_quit): Put the check here instead.

2004-04-18  Stephen J. Turnbull  <stephen@xemacs.org>

	* emacs.c (main_1): dumped_data_max_size and dumped_data_align_offset
	return size_t, so need %u format conversion.

2004-04-18  Stephen J. Turnbull  <stephen@xemacs.org>

	* Makefile.in.in ($(LISP)/finder-inf.el): Force removal.

2004-02-22  Stephen J. Turnbull  <stephen@xemacs.org>

	* console.c (function_key_map): Reference `key-binding'.

	* keymap.c (Vkey_translation_map): Improve docstring.

2004-04-18  Olivier Galibert  <galibert@pobox.com>

	* emacs.c (main_1): Fix stupid logic error in -si handling.

2004-04-15  Jerry James  <james@xemacs.org>

	* number.c (Foddp): Lisp name should be oddp, not odd.  Thanks to
	Olivier Galibert.

2003-12-07  Olivier Galibert  <galibert@pobox.com>

	* Makefile.in.in: Add in-executable dump file support.

	* dump-data.h (dumped_data_get): Added.

	* dump-data.c: Added.

	* emacs.c (main_1): Add support for -si.

	* dumper.c (pdump_ram_try): Added.  Tries getting the dump file
	from within the executable itself.
	(pdump_load): Call pdump_ram_try.

2004-04-15  Jerry James  <james@xemacs.org>

	* data.c (Fstring_to_number): Skip leading '-' when finding the
	end of a number.

2004-04-14  Jerry James  <james@xemacs.org>

	* data.c (Fstring_to_number): Work around limitations of GMP
	string to number converting functions.
	* lread.c (read_atom): Comment fix: the behavior is not random.
	* number.c (string_to_bignum): Ditto.

2004-04-13  Jerry James  <james@xemacs.org>

	* data.c (Fstring_to_number): Skip leading + sign to avoid
	triggering random GMP behavior.
	* lread.c (read_atom): Ditto.
	* lread.c (isratio_string): Recognize ratio with leading + sign.
	* number.c (string_to_bignum): Skip leading + sign.

2004-01-30  Glynn Clements  <glynn.clements@virgin.net>

	* device-x.c (x_error_handler): Don't call stderr_out

2004-04-08  Jerry James  <james@xemacs.org>

	* data.c: Use #ifndef for functions unused with new number types.
	* data.c (digit_to_number): Unused when HAVE_BIGNUM.
	* number.c: Remove multiply defined symbols Qintegerp & Qnumberp.
	* number.c (syms_of_number): DEFSUBR(Ffloatingp) was omitted.
	* print.c (print_internal): g++ thinks that specdepth might be
	used undefined.  It isn't, but the compiler can't tell.

2004-04-07  Jerry James  <james@xemacs.org>

	* number.c (Fevenp): Change the C boolean into Qnil/Qt.  Thanks to
	Robert Royar, Stephen Turnbull, and Hrvoje Niksic.
	* number.c (Foddp): Ditto.

2004-04-06  Jerry James  <james@xemacs.org>

	* bytecode.c (bytecode_arithcompare): Provide a default case to
	silence ICC.
	* bytecode.c (bytecode_arithop): Ditto.
	* data.c (Fstring_to_number): Use Ibyte instead of char.
	* data.c (Fmax): Cast from Ibyte to char as needed.
	* data.c (Flogand): REALLY commit the previous patch to data.c.
	* doprnt.c (emacs_doprnt_1): Use Ibyte instead of char.
	* floatfns.c (Ffloor): Provide a default case to silence ICC.
	* lread.c (parse_integer): Cast from Ibyte to char.
	* number-gmp.c: Get the qxe_getpid prototype.
	* number.c (string_to_bignum): Cast from Ibyte to char.
	* number.c (get_number_type): ICC does not know that abort does
	not return.
	* number.c (internal_coerce_number): Ditto.
	* number.h: Declare get_number_type.

2004-04-06  Jerry James  <james@xemacs.org>

	* number-mp.c (bignum_set_string): Read negative numbers correctly.

2004-04-06  Jerry James  <james@xemacs.org>

	* data.c (Flogand): Fix for --use-union-type.
	* data.c (Flogior): Ditto.

2004-04-06  Jerry James  <james@xemacs.org>

	* number-mp.c (bignum_to_double): Original algorithm was wrong.

2004-04-06  Stephen J. Turnbull  <stephen@xemacs.org>

	* lisp.h (Other numeric types): Band-aid: #define make_integer.

2004-04-05  Jerry James  <james@xemacs.org>

	* Makefile.in.in (number_objs): New.
	* Makefile.in.in (objs): Use it.
	* alloc.c: Make comment more precise.
	* alloc.c (make_bignum): New function.
	* alloc.c (make_bignum_bg): New function.
	* alloc.c (make_ratio): New function.
	* alloc.c (make_ratio_bg): New function.
	* alloc.c (make_ratio_rt): New function.
	* alloc.c (make_bigfloat): New function.
	* alloc.c (make_bigfloat_bf): New function.
	* alloc.c (sweep_bignums): New function.
	* alloc.c (sweep_ratios): New function.
	* alloc.c (sweep_bigfloats): New function.
	* alloc.c (gc_sweep): Use the new sweep functions.
	* alloc.c (Fgarbage_collect): Report collected number objects.
	* alloc.c (common_init_alloc_early): Initialize number allocators.
	* bytecode.c (bytecode_negate): Negate more number types.
	* bytecode.c (bytecode_arithcompare): Compare more number types.
	* bytecode.c (bytecode_arithop): Operate on more number types.
	* bytecode.c (execute_optimized_program): Several changes in
	support of the new number types.
	* data.c: Add symbol Qnonnegativep.
	* data.c (Ffixnump): New function.
	* data.c (Fnatnump): Work with bignums alos.
	* data.c (Fnonnegativep): New function.
	* data.c (Fnumberp): Return t for any number type.
	* data.c (ARITHCOMPARE_MANY): Add cases for the new number types.
	* data.c (Feqlsign): Work with the new number types.
	* data.c (Flss): Ditto.
	* data.c (Fgtr): Ditto.
	* data.c (Fleq): Ditto.
	* data.c (Fgeq): Ditto.
	* data.c (Fneq): Ditto.
	* data.c (Fzerop): Ditto.
	* data.c (Fnumber_to_string): Ditto.
	* data.c (Fstring_to_number): Ditto.
	* data.c (Fplus): Ditto.
	* data.c (Fminus): Ditto.
	* data.c (Ftimes): Ditto.
	* data.c (Fdiv): New function to produce ratios.
	* data.c (Fquo): Work with the new number types.
	* data.c (Fmax): Ditto.
	* data.c (Fmin): Ditto.
	* data.c (Flogand): Ditto.
	* data.c (Flogior): Ditto.
	* data.c (Flogxor): Ditto.
	* data.c (Flognot): Ditto.
	* data.c (Frem): Ditto.
	* data.c (Fmod): Ditto.
	* data.c (Fash): Ditto.
	* data.c (Flsh): Ditto.
	* data.c (Fadd1): Ditto.
	* data.c (Fsub1): Ditto.
	* data.c (syms_of_data): Declare new symbols and Lisp functions.
	* depend: Regenerate.
	* doprnt.c: Add converters for the new number types.
	* doprnt.c (union printf_arg): Add new obj field.
	* doprnt.c (get_doprnt_args): Use the new converters.
	* doprnt.c (emacs_doprnt_1): Convert and print the new number types.
	* emacs.c (main_1): Call syms_of_, vars_of_, and init_number.
	* floatfns.c (float_to_int): Convert to bignums if necessary.
	* floatfns.c (extract_float): Extract the new number types.
	* floatfns.c (Fexpt): Work with bignums.
	* floatfns.c (Fsqrt): Ditto.
	* floatfns.c (Fabs): Work with the new number types.
	* floatfns.c (Ffloat): Ditto.
	* floatfns.c (Fceiling): Ditto.
	* floatfns.c (Ffloor): Ditto.
	* floatfns.c (Fround): Ditto.
	* floatfns.c (Ftruncate): Ditto.
	* fns.c (Frandom): Update docstring and accept bignum limits.
	* fns.c (internal_equalp): Work with the new number types.
	* general-slots.h: Add new type name symbols.
	* lisp.h: Include number.h.  Add isratio_string prototype.
	Declare Qnonnegativep and Qnumberp.
	* lread.c (read_atom): Read ratios.
	* lread.c (parse_integer): Read bignums.
	* lread.c (isratio_string): New functions.
	* lrecord.h (lrecord_type): Add new number type values.
	* symsinit.h: Declare syms_of_, vars_of_, and init_number.
	* sysdep.c (seed_random): Set the bignum random seed.

2004-03-30  Zajcev Evgeny  <zevlg@yandex.ru>

	* window.c: Declare `allow_deletion_of_last_visible_frame' extern.
	* window.c (window_loop): [fix] Take into account
	`allow-deletion-of-last-visible-frame' variable.
	* window.c (replace-buffer-in-windows): Ditto.

ChangeLog Entries from tests/ChangeLog

goto announcement, summary, changes

2004-10-22  Stephen J. Turnbull  <stephen@xemacs.org>

	* XEmacs 21.5.18 "chestnut" is released.

2004-10-07  Stephen J. Turnbull  <stephen@xemacs.org>

	* automated/regexp-tests.el: Add tests for bug identified by
	Steve Youngs 2004-09-30 <microsoft-free.87ekkjhj7t.fsf@youngs.au.com>

2004-09-08  Stephen J. Turnbull  <stephen@xemacs.org>

	* automated/regexp-tests.el: Add tests for bug identified by
	Katsumi Yamaoka 2004-09-03 <b9ywtzbbpue.fsf_-_@jpl.org>.

2004-05-14  Stephen J. Turnbull  <stephen@xemacs.org>

	* automated/tag-tests.el (first form): Put non-ASCII chars back.

2004-05-13  Jerry James  <james@xemacs.org>

	* automated/lisp-tests:el: Another test fix because
	(eq most-negative-fixnum (- most-negative-fixnum)).

2004-05-11  Vin Shelton  <acs@xemacs.org>

	* automated/tag-test.el: Use a temp directory to avoid conflicts
	with extra TAGS files.

2004-05-08  Vin Shelton  <acs@xemacs.org>

	* automated/tag-test.el: Created.

2004-04-21  Jerry James  <james@xemacs.org>

	* automated/test-harness.el (Assert): Add an optional failing-case
	arg so we can see what the test was trying to do when it failed.
	* automated/lisp-tests.el: Use the failing-case arg for Asserts
	with variables.  Use eql on tests that might produce bignums.  Fix
	test for non-bignum XEmacsen that fails because
	(eq most-negative-fixnum (- most-negative-fixnum)).

2004-04-19  Stephen J. Turnbull  <turnbull@sk.tsukuba.ac.jp>

	* automated/mule-tests.el: Inhibit GC to speed up BIG_STRING tests.

2004-04-19  Stephen J. Turnbull  <stephen@xemacs.org>

	* automated/mule-tests.el: Darwin doesn't like ISO 8859/2 filenames.

2004-04-05  Jerry James  <james@xemacs.org>

	* automated/lisp-tests.el: Add bignum and ratio tests.

goto announcement, summary, changes


Conform with <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Automatically validated by PSGML